Przejdź do zawartości

Wytyczne przygotowania szablonów: Różnice pomiędzy wersjami

Z Primesoft Wiki
Primesoft (dyskusja | edycje)
Primesoft (dyskusja | edycje)
 
(Nie pokazano 4 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 17: Linia 17:
Opcja dostępna w menu ''Plik'' pozycja ''Opcje'' jak niżej:
Opcja dostępna w menu ''Plik'' pozycja ''Opcje'' jak niżej:
[[Plik:Czcionki wbudowane-opcje.png|600x300px|ramka|centruj|alt=Konfiguracja programu MS Word - menu Opcje]]
[[Plik:Czcionki wbudowane-opcje.png|600x300px|ramka|centruj|alt=Konfiguracja programu MS Word - menu Opcje]]
Dopiero tak przygotowany szablon *.docx wgrywany do systemu ArthurDoc.
Dopiero tak przygotowany szablon *.docx wgrywany do systemu ArthurDoc.
System domyślnie (bez konieczności osadzania) obsługuje poniżej zamieszczona listę czcionek. W przypadku jeżeli czcionka wykorzystana w szablonie nie zostanie osadzona w dokumencie i jednoczenie nie występuje na wykazie, wówczas, jeżeli jest to możliwe system stara się dopasować czcionkę z listy czcionek wbudowanych.
{| style="border-collapse: collapse; width: 916px; height: 982px;" border="1px" data-path-to-node="3" < thead>
|- style="height: 30px;"
! style="height: 23px; width: 261.275px;" | '''Nazwa czcionki'''
! style="height: 23px; width: 351.375px;" | '''Styl (Szerokość/Kursywa)'''
! style="height: 23px; width: 297.35px;" | '''Rodzina / Uwagi'''
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,1,0,0" data-index-in-node="0">Abyssinica SIL</strong>
| style="height: 23px; width: 351.375px;" | Regular
| style="height: 23px; width: 297.35px;" | SIL Open Font
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,2,0,0" data-index-in-node="0">Aharoni CLM</strong>
| style="height: 23px; width: 351.375px;" | Bold / Bold Oblique / Book / Book Oblique
| style="height: 23px; width: 297.35px;" | CLM Project
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,3,0,0" data-index-in-node="0">Amiri</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Slanted / Bold Slanted
| style="height: 23px; width: 297.35px;" | Arabski klasyczny
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,4,0,0" data-index-in-node="0">Amiri Quran</strong>
| style="height: 23px; width: 351.375px;" | Regular / Colored
| style="height: 23px; width: 297.35px;" | Specjalna (Koran)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,5,0,0" data-index-in-node="0">Andale Mono</strong>
| style="height: 23px; width: 351.375px;" | Regular
| style="height: 23px; width: 297.35px;" | Monospace
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,6,0,0" data-index-in-node="0">Ani</strong>
| style="height: 23px; width: 351.375px;" | Domyślny
| style="height: 23px; width: 297.35px;" | -
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,7,0,0" data-index-in-node="0">AR PL UKai</strong>
| style="height: 23px; width: 351.375px;" | Book (CN / HK / TW)
| style="height: 23px; width: 297.35px;" | CJK (Szeryfowe)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,8,0,0" data-index-in-node="0">AR PL UMing</strong>
| style="height: 23px; width: 351.375px;" | Light (CN / HK / TW)
| style="height: 23px; width: 297.35px;" | CJK (Bezszeryfowe)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,9,0,0" data-index-in-node="0">Arial</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Standard (Microsoft)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,10,0,0" data-index-in-node="0">Arial Black</strong>
| style="height: 23px; width: 351.375px;" | Regular
| style="height: 23px; width: 297.35px;" | Standard (Microsoft)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,11,0,0" data-index-in-node="0">Caladea</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Kompatybilna z Cambria
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,12,0,0" data-index-in-node="0">Carlito</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Kompatybilna z Calibri
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,13,0,0" data-index-in-node="0">Comic Sans MS</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold
| style="height: 23px; width: 297.35px;" | Styl odręczny
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,14,0,0" data-index-in-node="0">Courier New</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Maszynowy
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,15,0,0" data-index-in-node="0">David CLM</strong>
| style="height: 23px; width: 351.375px;" | Medium / Medium Italic / Bold / Bold Italic
| style="height: 23px; width: 297.35px;" | Hebrajski
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,16,0,0" data-index-in-node="0">DejaVu Sans</strong>
| style="height: 23px; width: 351.375px;" | Book / Bold / Oblique / Bold Oblique
| style="height: 23px; width: 297.35px;" | Szeroka obsługa Unicode
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,17,0,0" data-index-in-node="0">DejaVu Sans Mono</strong>
| style="height: 23px; width: 351.375px;" | Book / Bold / Oblique / Bold Oblique
| style="height: 23px; width: 297.35px;" | Programistyczna
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,18,0,0" data-index-in-node="0">DejaVu Serif</strong>
| style="height: 23px; width: 351.375px;" | Book / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Szeryfowa
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,19,0,0" data-index-in-node="0">Frank Ruehl CLM</strong>
| style="height: 23px; width: 351.375px;" | Medium / Medium Oblique / Bold / Bold Oblique
| style="height: 23px; width: 297.35px;" | Hebrajski
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,20,0,0" data-index-in-node="0">Garuda</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Oblique / Bold Oblique
| style="height: 23px; width: 297.35px;" | Tajski
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,21,0,0" data-index-in-node="0">Gentium Basic</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Szeryfowa
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,22,0,0" data-index-in-node="0">Georgia</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Szeryfowa (Microsoft)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,23,0,0" data-index-in-node="0">Impact</strong>
| style="height: 23px; width: 351.375px;" | Regular
| style="height: 23px; width: 297.35px;" | Nagłówkowa
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,24,0,0" data-index-in-node="0">Liberation Mono</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Zamiennik Courier
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,25,0,0" data-index-in-node="0">Liberation Sans</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Zamiennik Arial
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,26,0,0" data-index-in-node="0">Liberation Serif</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Zamiennik Times
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,27,0,0" data-index-in-node="0">Linux Libertine O</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Semibold / Mono
| style="height: 23px; width: 297.35px;" | Typografia profesjonalna
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,28,0,0" data-index-in-node="0">Loma</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Oblique / Bold Oblique
| style="height: 23px; width: 297.35px;" | Tajski
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,29,0,0" data-index-in-node="0">Noto Sans</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Obsługa "No Tofu" (Global)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,30,0,0" data-index-in-node="0">Noto Sans CJK</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold (HK / JP / KR / SC / TC)
| style="height: 23px; width: 297.35px;" | Azjatyckie (Chiny/Jap/Kor)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,31,0,0" data-index-in-node="0">Noto Serif</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Szeryfowa (Global)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,32,0,0" data-index-in-node="0">Sawasdee</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Oblique / Bold Oblique
| style="height: 23px; width: 297.35px;" | Tajski / Ozdobny
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,33,0,0" data-index-in-node="0">Times New Roman</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Standardowa szeryfowa
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,34,0,0" data-index-in-node="0">Tlwg Mono</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Oblique / Bold Oblique
| style="height: 23px; width: 297.35px;" | Tajski (Monospace)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,35,0,0" data-index-in-node="0">Trebuchet MS</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Bezszeryfowa (Microsoft)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,36,0,0" data-index-in-node="0">Umpush</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Light / Oblique
| style="height: 23px; width: 297.35px;" | Tajski
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,37,0,0" data-index-in-node="0">Verdana</strong>
| style="height: 23px; width: 351.375px;" | Regular / Bold / Italic / Bold Italic
| style="height: 23px; width: 297.35px;" | Ekranowa (Microsoft)
|- style="height: 23px;"
| style="height: 23px; width: 261.275px;" | <strong data-path-to-node="3,38,0,0" data-index-in-node="0">Webdings</strong>
| style="height: 23px; width: 351.375px;" | Regular
| style="height: 23px; width: 297.35px;" | Symbole
|}
=== Jak szybko testować szablony ===
=== Jak szybko testować szablony ===
Aby przyspieszyć fazę testowania/przygotowania szablonu zaleca się wgranie do systemu AthurDoc przykładowych danych przypisanych do danego szablonu. Rozwiązanie pozwala na wygenerowanie przykładowego pliku bez konieczności każdorazowego definiowania Zadań. Podczas generowania dokumentu wykorzystując plik z przykładowymi danymi system korzysta zawsze z pierwszego rekordu definiującego dokument. Jako przykładowe dane możliwe jest wgranie pliku JSON, XLSX lub XML. Wgranie przykładowych danych dostępne jest na ekranie Edycji szablonu patrz: '''(1)''', natomiast test szablonu bazujący na przykładowych danych wykonujemy korzystając z opcji Walidacja przykładowymi danymi patrz: '''(2)'''
Aby przyspieszyć fazę testowania/przygotowania szablonu zaleca się wgranie do systemu AthurDoc przykładowych danych przypisanych do danego szablonu. Rozwiązanie pozwala na wygenerowanie przykładowego pliku bez konieczności każdorazowego definiowania Zadań. Podczas generowania dokumentu wykorzystując plik z przykładowymi danymi system korzysta zawsze z pierwszego rekordu definiującego dokument. Jako przykładowe dane możliwe jest wgranie pliku JSON, XLSX lub XML. Wgranie przykładowych danych dostępne jest na ekranie Edycji szablonu patrz: '''(1)''', natomiast test szablonu bazujący na przykładowych danych wykonujemy korzystając z opcji Walidacja przykładowymi danymi patrz: '''(2)'''
Linia 26: Linia 190:
Przykładowe szablony wraz z danymi wejściowymi
Przykładowe szablony wraz z danymi wejściowymi


* Faktura
* Faktura: szablon - [https://wiki.arthurdoc.com/wiki/images/f/f3/Invoice_example.docx Faktury Szablon] dane źródłowe - [https://wiki.arthurdoc.com/wiki/images/4/45/Invoice_example.xlsx Faktury Dane źródłowe]
szablon - [https://wiki.arthurdoc.com/wiki/images/f/f3/Invoice_example.docx Faktury Szablon]
dane źródłowe - [https://wiki.arthurdoc.com/wiki/images/4/45/Invoice_example.xlsx Faktury Dane źródłowe]


* List
* List: szablon - [https://wiki.arthurdoc.com/wiki/images/5/5e/Letter_example.docx List Szablon] dane źródłowe - [https://wiki.arthurdoc.com/wiki/images/7/7d/Letter_example.xlsx List Dane źródłowe]


szablon - [https://wiki.arthurdoc.com/wiki/images/5/5e/Letter_example.docx List Szablon]
* Umowa: szablon - [https://wiki.arthurdoc.com/wiki/images/3/36/Statement_of_work_example.docx Umowy Szablon] dane źródłowe - [https://wiki.arthurdoc.com/wiki/images/9/91/Statement_of_work_example.xlsx Umowy Dane źródłowe]
dane źródłowe - [https://wiki.arthurdoc.com/wiki/images/7/7d/Letter_example.xlsx List Dane źródłowe]
 
* Umowa
szablon - [https://wiki.arthurdoc.com/wiki/images/3/36/Statement_of_work_example.docx Umowy Szablon]
dane źródłowe - [https://wiki.arthurdoc.com/wiki/images/9/91/Statement_of_work_example.xlsx Umowy Dane źródłowe]


= FOP TO PDF =
= FOP TO PDF =
Linia 48: Linia 205:
Przykładowe szablony wraz z danymi wejściowymi
Przykładowe szablony wraz z danymi wejściowymi


=== Rachunek ===
* Rachunek: szablon - [https://wiki.arthurdoc.com/wiki/images/4/45/Invoice_example.xlsx Rachunek Szablon] dane źródłowe - [https://gitlab.primesoft.pl/gdk/gdk_api_foptopdf/-/blob/master/src/main/resources/template_examples/invoice_example_fop.xsl Rachunek Dane źródłowe]
 
szablon - [https://wiki.arthurdoc.com/wiki/images/4/45/Invoice_example.xlsx Rachunek Szablon]
dane źródłowe - [https://gitlab.primesoft.pl/gdk/gdk_api_foptopdf/-/blob/master/src/main/resources/template_examples/invoice_example_fop.xsl Rachunek Dane źródłowe]

Aktualna wersja z 27 kwi 2026, 14:23

DOC/PDF

Wstęp

FAQ

Jak zapisywać zmienne w szablonie

Szablony DOC/FOP bazują na plikach w formacie *.docx. Pola dynamiczne w tak przygotowanym szablonie należy zapisać poprzedzając nazwę pola znakiem $ a nazwę kolumny w danych źródłowych wpisujemy w nawiasach klamrowych np.: ${Nazwa_firmy}. Ważne również, aby w nazwie kolumny nie stosować polskich znaków i spacji.

Czy szablon DOC/PDF pozwala na instrukcje warunkowe

Tak jest to jedna z wielu możliwości wbudowanych w ramach szablonów DOC/PDF. Przygotowany w systemie ArthurDoc silnik transformat pozwala nie tylko na dodanie instrukcji warunkowych (typu jeżeli, wykonaj dla wszystkich) lecz również na obróbkę danych (np. zapisanie liczny jako tekst, sformatowanie daty itp). Opis wszystkich przygotowanych funkcji znajduje się w artykule DocToPdf - wbudowane funkcje

Tekst nie jest widoczny po przegenerowaniu dokumentu do formatu PDF (Wykorzystanie niestandardowych czcionek)

W przypadku jeżeli w szablonie dokumentu w formacie *.docx widoczny jest tekst natomiast po wykorzystaniu szablonu i przedruku dokumentu do formatu PDF tekst nie jest widoczny najprawdopodobniej problem jest związany z brakiem wybranej czcionki w silniku przedruku uzupełnionego dokumentu do formatu PDF. W przypadku wystąpienia wyżej opisanego problemu zaleca się, przed zapisaniem szablonu w natywnym programie tj. Microsoft Word, wymuszenie osadzenie czcionek w dokumencie jak niżej:

Konfiguracja programu MS Word - osadzenie czcionek w szablonie

Opcja dostępna w menu Plik pozycja Opcje jak niżej:

Konfiguracja programu MS Word - menu Opcje

Dopiero tak przygotowany szablon *.docx wgrywany do systemu ArthurDoc.


System domyślnie (bez konieczności osadzania) obsługuje poniżej zamieszczona listę czcionek. W przypadku jeżeli czcionka wykorzystana w szablonie nie zostanie osadzona w dokumencie i jednoczenie nie występuje na wykazie, wówczas, jeżeli jest to możliwe system stara się dopasować czcionkę z listy czcionek wbudowanych.

Nazwa czcionki Styl (Szerokość/Kursywa) Rodzina / Uwagi
Abyssinica SIL Regular SIL Open Font
Aharoni CLM Bold / Bold Oblique / Book / Book Oblique CLM Project
Amiri Regular / Bold / Slanted / Bold Slanted Arabski klasyczny
Amiri Quran Regular / Colored Specjalna (Koran)
Andale Mono Regular Monospace
Ani Domyślny -
AR PL UKai Book (CN / HK / TW) CJK (Szeryfowe)
AR PL UMing Light (CN / HK / TW) CJK (Bezszeryfowe)
Arial Regular / Bold / Italic / Bold Italic Standard (Microsoft)
Arial Black Regular Standard (Microsoft)
Caladea Regular / Bold / Italic / Bold Italic Kompatybilna z Cambria
Carlito Regular / Bold / Italic / Bold Italic Kompatybilna z Calibri
Comic Sans MS Regular / Bold Styl odręczny
Courier New Regular / Bold / Italic / Bold Italic Maszynowy
David CLM Medium / Medium Italic / Bold / Bold Italic Hebrajski
DejaVu Sans Book / Bold / Oblique / Bold Oblique Szeroka obsługa Unicode
DejaVu Sans Mono Book / Bold / Oblique / Bold Oblique Programistyczna
DejaVu Serif Book / Bold / Italic / Bold Italic Szeryfowa
Frank Ruehl CLM Medium / Medium Oblique / Bold / Bold Oblique Hebrajski
Garuda Regular / Bold / Oblique / Bold Oblique Tajski
Gentium Basic Regular / Bold / Italic / Bold Italic Szeryfowa
Georgia Regular / Bold / Italic / Bold Italic Szeryfowa (Microsoft)
Impact Regular Nagłówkowa
Liberation Mono Regular / Bold / Italic / Bold Italic Zamiennik Courier
Liberation Sans Regular / Bold / Italic / Bold Italic Zamiennik Arial
Liberation Serif Regular / Bold / Italic / Bold Italic Zamiennik Times
Linux Libertine O Regular / Bold / Italic / Semibold / Mono Typografia profesjonalna
Loma Regular / Bold / Oblique / Bold Oblique Tajski
Noto Sans Regular / Bold / Italic / Bold Italic Obsługa "No Tofu" (Global)
Noto Sans CJK Regular / Bold (HK / JP / KR / SC / TC) Azjatyckie (Chiny/Jap/Kor)
Noto Serif Regular / Bold / Italic / Bold Italic Szeryfowa (Global)
Sawasdee Regular / Bold / Oblique / Bold Oblique Tajski / Ozdobny
Times New Roman Regular / Bold / Italic / Bold Italic Standardowa szeryfowa
Tlwg Mono Regular / Bold / Oblique / Bold Oblique Tajski (Monospace)
Trebuchet MS Regular / Bold / Italic / Bold Italic Bezszeryfowa (Microsoft)
Umpush Regular / Bold / Light / Oblique Tajski
Verdana Regular / Bold / Italic / Bold Italic Ekranowa (Microsoft)
Webdings Regular Symbole

Jak szybko testować szablony

Aby przyspieszyć fazę testowania/przygotowania szablonu zaleca się wgranie do systemu AthurDoc przykładowych danych przypisanych do danego szablonu. Rozwiązanie pozwala na wygenerowanie przykładowego pliku bez konieczności każdorazowego definiowania Zadań. Podczas generowania dokumentu wykorzystując plik z przykładowymi danymi system korzysta zawsze z pierwszego rekordu definiującego dokument. Jako przykładowe dane możliwe jest wgranie pliku JSON, XLSX lub XML. Wgranie przykładowych danych dostępne jest na ekranie Edycji szablonu patrz: (1), natomiast test szablonu bazujący na przykładowych danych wykonujemy korzystając z opcji Walidacja przykładowymi danymi patrz: (2)

Przykładowe dane - szybkie testowanie szablonu

Przykłady

Przykładowe szablony wraz z danymi wejściowymi

FOP TO PDF

Wstęp

Szablony FOP TO PDF bazuje na języku/transformacie FOP (Formatting Objects Processor), która na podstawie pliku XSL-FO (XSL Formatting Objects) oraz silnika graficznego pozwala szybkie wygenerowanie dokumentu w formacie PDF. Szczegółowy opis możliwości transformaty XSL-FO znajduje sie na stronie projektu The Apache™ FOP Project]

Przykłady

Przykładowe szablony wraz z danymi wejściowymi