Nyílt forráskódú Ruby könyvtár Word DOCX fájlok generálásához

Egy erőteljes ingyenes Ruby API, amely lehetővé teszi a szoftverfejlesztők számára, hogy könnyedén Word DOCX dokumentumokat hozzanak létre. Lehetővé teszi a dokumentum tervezését's Layout, Apply Styles, and Use Mail Merge Fields as Placeholders for Dynamic Content.

Mi a Sablon könyvtár?

A szoftverfejlesztés világában a dinamikus dokumentumok, például jelentések, számlák vagy levelek generálása gyakori követelmény. Bár sok könyvtár képes a dokumentumok alulról történő létrehozására, gyakran meredek tanulási görbével és fáradságos kódolással jár a formázás pontos beállítása. Itt jön képbe a Sablon, egy erőteljes nyílt forráskódú Ruby könyvtár, amely segítséget nyújt. A Sablon forradalmasítja a dokumentumgenerálást a Microsoft Word ismerősségének és a Ruby erejének kihasználásával, lehetővé téve összetett és gyönyörűen formázott dokumentumok létrehozását minimális erőfektetés mellett. Támogatja a Word Docx létrehozását, tartalom beszúrását MailMerge mezők segítségével, fejlett formázási lehetőségeket, annotációk hozzáadását a sablonokhoz, konfigurálható HTML és CSS konverziót és sok más funkciót.

Alapvetően a Sablon egy dokumentumsablon-feldolgozó .docx fájlokhoz. A Word beépített Mail Merge funkcióját használja, lehetővé téve sablonok létrehozását egy ismerős környezetben. Tervezheti a dokumentum elrendezését, alkalmazhat stílusokat, és Mail Merge mezőket használhat helyőrzőként a dinamikus tartalomhoz. A Sablon ezután ezt a sablont és egy adatkontextust (Ruby hash) vesz alapul, és egy végső, adatfeltöltött Word dokumentumot állít elő. Ez a megközelítés elválasztja a megjelenítési réteget (a Word sablon) az adat rétegtől (az Ön Ruby kódja), így a dokumentumgenerálás folyamata tiszta és karbantartható. Szintaxisa intuitív mindenki számára, aki ismeri a Ruby-t és a sablonnyelveket. Tervezőbarát, a tartalom és a dizájn teljesen különválik. A tervezők közvetlenül a Wordben dolgozhatnak anélkül, hogy kódot érintenének.

Previous Next

Az Sablon használatának megkezdése

Az ajánlott módja a Sablon telepítésének a RubyGems használata. Kérjük, használja a következő parancsot a zökkenőmentes telepítéshez.

Dokumentáció telepítése RubyGems-en keresztül


gem 'sablon' 
You can also download it directly from GitHub.

Tartalom beszúrása Word mezőkkel Ruby-n keresztül

A legáltalánosabb funkció a dinamikus tartalom beszúrása. A nyílt forráskódú Ruby könyvtár, a Sablon a Word beépített mező szintaxisát használja helyőrzők definiálásához. A Word sablonjában beszúr egy mezőkódot, ahol dinamikus tartalmat szeretne. A Sablon ezt a mezőt helyettesíti az Ön értékével. Az alábbi példa bemutatja, hogyan szúrhat be a szoftverfejlesztő dinamikusan egy tartalmi elemet a felhasználó köszöntésére.

Hogyan szúrjunk be dinamikusan szöveges tartalmakat Word dokumentumba Ruby használatával?

require 'sablon'

template = Sablon.template(File.expand_path('~/template.docx'))
context = {
  name: "Sarah Connor"
}

template.render_to_file(File.expand_path('~/output.docx'), context)

Template:

Hello, «name»! Welcome to our platform.

Output:
Hello, Sarah Connor! Welcome to our platform.

HTML konvertálása WordML-re

A Sablon egyik kiemelkedő funkciója a HTML WordProcessingML-re (a .docx fájlok által használt XML formátum) történő konvertálás képessége. Ez rendkívül hasznos, ha gazdag szöveges tartalmat kell beilleszteni, például formázott bekezdéseket, listákat vagy táblázatokat adatbázisból vagy gazdag szövegszerkesztőből. A Sablon a HTML karakterláncot megfelelően formázott szekcióvá alakítja a Word dokumentumban, megőrizve a címsorokat, félkövér és dőlt szöveget, valamint a lista formázását. Itt egy egyszerű példa, amely bemutatja, hogyan töltsön be egy meglévő sablont és konvertálja a HTML tartalmat Word Docx fájlba Ruby alkalmazásokban.

Hogyan konvertáljuk az HTML tartalmakat Word Docx fájlba Ruby könyvtár segítségével?

require "sablon"

template = Sablon.template(File.expand_path("template.docx"))

html_content = "

Ez egy alcím

Ez egy bekezdés félkövér és dőlt szöveggel.

  • Első elem
  • Második elem
" context = { article_content: Sablon.content(:html, html_content) } template.render_to_file(File.expand_path("output.docx"), context) Conditional Rendering

Dinamikus kép beszúrása Ruby-val

A nyílt forráskódú Sablon könyvtár egy hasznos funkciót tartalmaz a dinamikus képek beillesztéséhez Word Docx dokumentumokba Ruby könyvtár használatával. Néhány kódsorral a fejlesztők dinamikusan képeket szúrhatnak be a dokumentumokba. Megadhat egy képfájlt, és a Sablon beágyazza azt a dokumentumba. Az alábbi példa bemutatja, hogyan valósítható meg a dinamikus képbemásolás Word dokumentumokba.

Hogyan szúrjunk be dinamikusan képet Word Docx-be Ruby könyvtár használatával?


// You would have a placeholder image in your template with a special filename like «=company_logo».

context = {
  company_logo: Sablon.content(:image, "path/to/your/logo.png")
}

Feltételes megjelenítés Ruby-val

A Sablon könyvtár támogatja a feltételes blokkokat, lehetővé téve a felhasználók számára, hogy a változó jelenléte vagy értéke alapján megjelenítsenek vagy elrejtjenek részeket a Word dokumentumban. Ez tökéletes a dokumentumok specifikus feltételek alapján történő testreszabásához. Például az alábbi példa megmutatja, hogyan állíthatnak be parancsokat konkrét információk megjelenítésére vagy elrejtésére egy Word dokumentumban. Ha a show_extra_info igaz, az if és endIf címkék közötti tartalom bekerül a végső dokumentumba. Ha hamis vagy nil, a tartalom eltávolításra kerül.

Hogyan jelenítsünk meg vagy rejtsünk el részeket Word Docx dokumentumokban Ruby-val?


context = {
  show_extra_info: true # or false
}
 Magyar