Wydruk do pdf
Poniższy dokument składa się z opisu trzech części składających się na wygląd wydruku:
- Atrybuty zawężające
- Selektory
- Reguły
Dostosowanie wygląd wydruku możliwe jest poprzez pliki #style#.xml, np. standardowym plikiem definiującym wygląd Faktury Sprzedaży jest plik 7#SalesInvoice#style#Wydruk_domyślny.xml. Głównym elementem tego pliku jest style, który zawiera elementy określające wygląd poszczególnych elementów wydruku zdefiniowanych w pliku layout.
Jednym z elementów podrzędnych elementu style jest element fonts, który określa wszystkie czcionki, które zostaną wykorzystane w wydruku. Może on zawierać, jeden lub więcej elementów font, który definiuje krój, wielkość, wygląd oraz styl fontu.
Atrybuty elementu font to:
- name – określa nazwę fontu, przez którą możemy się do niego odwołać
- face – nazwa kroju fontu
- size – rozmiar w punktach
- color – kolor
- style – style fontu. Może zawierać jedną (lub więcej wartości oddzielonych znakiem spacji) z wartości bold, italic, underline.
Wewnątrz elementu fonts powinien znaleźć się także jeden element font z pominiętym atrybutem name. Font ten będzie stosowany jako font domyślny dla wydruku.
<font face=”Trebuchet MS” size=”10″/>
<font name=”title” face=”Arial” size=”20″ color=”#9fc54c”/>
<font name=”header” face=”Tahoma” size=”8″ color=”#999999″/>
<font name=”summary_value” face=”Trebuchet MS” size=”15″ color=”#9fc54c” style=”bold”/>
</fonts>
Oprócz elementu fonts w pliku Styles.xml mogą znajdować się elementy w schemacie:
<selektor> <reguła/> <reguła/> [...] </selektor>
Gdzie selektor decyduje o tym, czy podległe mu reguły zostaną zastosowane dla danego elementu. Większość selektorów ma taką samą nazwę jak element, który stylują. Np. w celu ostylowania paragrafu (element p w pliku Layout.xml ) należy zastosować selektor p.
<margin top=”5″/>
</p>
Powyższy przykład wszystkim paragrafom wydruku ustawi margines górny na 5 punktów. Selektor może wybrać do ostylowania tylko wybrane elementy danego typu. W tym celu do elementu w pliku Layout.xml oraz selektora w pliku Styles.xml należy dodać atrybut class. Selektor wybierze wtedy tylko te elementy, które mają identyczną wartość atrybutu class.
<text font=”normal”/>
</p>
<p class=”title”>
<text font=”title”/>
</p>
Powyższy przykład ustawi font wszystkich paragrafów na normal ale te, których atrybut class to title zostanie ustawiony font title. Dokładny opis innych atrybutów selektorów oraz spis reguł stylujących znajduje się w sekcji Wygląd. Lista selektorów oraz reguł, które można zastosować dla danego elementu znajduje się w opisie poszczególnych elementów w sekcji Układ. Reguły z pliku style stosowane są od góry do dołu tzn. jeżeli dwa selektory dopasują ten sam element i zawierają one takie same reguły z innymi wartościami to zostanie zastosowana wartość występująca później.
Atrybuty zawężające
Opis każdego selektora zawiera listę elementów, które styluje oraz listę reguł, jakie można w nim umieścić. Opis każdej reguły zawiera listę atrybutów jakie można w niej zastosować.
Każdy selektor może zostać zawężony poprzez atrybut class. Dodatkowo selektory elementów związane z tabelami mogą zostać zawężone poprzez atrybut index, który może zawierać liczbę całkowitą lub wyrażenie postaci An+B, gdzie A oraz B to liczby całkowite. Selektor taki dopasuje element, jeżeli zgadza się on z indeksem wiersza tabeli (wiersze tabeli numerowane są od 0 z góry na dół).
Przykłady:
- index=”0″ – dopasuje pierwszy wiersz w tabeli
- index=”first” – dopasuje pierwszy wiersz w tabeli
- index=”last” – dopasuje ostatni wiersz w tabeli
- index=”5″ – dopasuje szósty wiersz w tabeli
- index=”2n” – dopasuje parzyste wiersze tabeli tzn. z indeksem równym 0,2,4… czyli wiersze pierwszy, trzeci, piąty…
- index=”3n+1″ – dopasuje wiersze z indeksem 1, 4, 7…
- index=”3n+2″ – dopasuje wiersze z indeksem 2, 5, 8…
Selektory
| Nazwa | Body | 
| Opis | Selektor dla głównego elementu wydruku | 
| Elementy stylowane | 
 | 
| Parametry zawężające | 
 | 
| Reguły | 
 | 
<page size=”a4″ orientation=”portrait”/>
<margin left=”20″ right=”20″ top=”27″ bottom=”27″/>
</body>
| Nazwa | Footer | 
| Opis | Selektor dla stopki dokumentu | 
| Elementy stylowane | 
 | 
| Parametry zawężające | 
 | 
| Reguły | 
 | 
<text align=”right”/>
</footer>
| Nazwa | DataCell | 
| Opis | Selektor dla komórki w tabeli dynamicznej | 
| Elementy stylowane | 
 | 
| Parametry zawężające | 
 | 
| Reguły | 
 | 
<background color=”#26437E”/>
<text font=”header” align=”right”/>
</dataCell>
| Nazwa | HeadCell | 
| Opis | Selektor dla komórki nagłówka w tabeli dynamicznej | 
| Elementy stylowane | 
 | 
| Parametry zawężające | 
 | 
| Reguły | 
 | 
<background color=”#26437E”/>
<border left=”0.5″ right=”0.5″ top=”0.5″ bottom=”0.5″ color=”#E4F0F7″/>
<text font=”header” align=”center”/>
</headCell>
| Nazwa | Hr | 
| Opis | Selektor dla linii poziomej | 
| Elementy stylowane | 
 | 
| Parametry zawężające | 
 | 
| Reguły | 
 | 
<line style=”dotted”/>
</hr>
| Nazwa | Image | 
| Opis | Selektor dla obrazka | 
| Elementy stylowane | 
 | 
| Parametry zawężające | 
 | 
| Reguły | 
 | 
<fit width=”80″ height=”80″ />
</image>
| Nazwa | P | 
| Opis | Selektor dla paragrafu | 
| Elementy stylowane | 
 | 
| Parametry zawężające | 
 | 
| Reguły | 
 | 
<text font=”title”/>
</p>
| Nazwa | Section | 
| Opis | Selektor dla sekcji | 
| Elementy stylowane | 
 | 
| Parametry zawężające | 
 | 
| Reguły | 
 | 
<background color=”#26437E”/>
<border left=”0.5″ right=”0.5″ top=”0.5″ bottom=”0.5″ color=”#E4F0F7″/>
</section>
| Nazwa | Table | 
| Opis | Selektor dla tabeli dynamicznej | 
| Elementy stylowane | 
 | 
| Parametry zawężające | 
 | 
| Reguły | 
 | 
<width percentage=”100″/>
</table>
Reguły
| Nazwa | Background | 
| Opis | Reguła określająca tło elementu | 
| Atrybuty | 
 | 
| Nazwa | Border | 
| Opis | Reguła określająca obramowanie elementu | 
| Atrybuty | 
 | 
| Uwagi | Szerokość obramowania może być podana w różnych jednostkach m.in.: cm, in, mm, pt. Domyślną jednostką są punkty. | 
| Nazwa | borderLeft, borderRight, borderTop, borderBottom | 
| Opis | Reguły określające poszczególne części obramowania elementu | 
| Atrybuty | 
 | 
| Nazwa | Fit | 
| Opis | Reguła określająca rozmiar elementu | 
| Atrybuty | 
 | 
| Uwagi | Szerokość i wysokość może być podana w różnych jednostkach m.in.: cm, in, mm, pt. Stylowany element zachowa swoje proporcje przyjmując mniejszy z podanych wymiarów. | 
| Nazwa | Margin | 
| Opis | Reguła określająca marginesy elementu | 
| Atrybuty | 
 | 
| Uwagi | Szerokość marginesu może być podana w różnych jednostkach m.in.: cm, in, mm, pt. | 
| Nazwa | Text | 
| Opis | Reguła określająca styl tekstu | 
| Atrybuty | 
 | 
| Nazwa | Width | 
| Opis | Reguła określająca szerokość elementu | 
| Atrybuty | 
 | 
 
                        

