Sisältö
Tässä dokumentissa kuvataan pdf-kirjan (esimerkiksi varaosakirjan) luonnissa käytettävän xml-ohjaustiedoston sisältö.
Kyseisiä ohjaustiedostoja käytetään esimerkiksi varaosaluetteloiden tulostamiseen, projektin yms. mapitustyökalun käytössä, ikkuna- ja ovitilausdokumenttien luonnissa jne. Ohjaustiedosto määrittää tuotettavan pdf-tiedoston ulkoasun sekä mahdollisesti sisältöön otettavia asioita.
Esimerkki
Esimerkki käytetystä ohjaustiedostosta:
<?xml version="1.0" encoding="ISO-8859-1"?>
<document indextitle="Sisällysluettelo">
<index>
<level value="1" font="Verdana" size="14" fontstyle="bold" />
<level value="2" fontstyle="bold"/>
<level value="3" font="Verdana" size="10" fontstyle="italic" />
</index>
<doccover coverpath="\$SystemRoot\$/templates/pdm_templates/pdf_kirja_kansi.pdf">
<covertextblock align="center" size="25" font="Verdana" textposition="50%, 80%, 1">
<covertext content="[OBJCODE], " size="18" font="Verdana" fontstyle="bold"/>
<covertext content="[DESCR]" size="16" font="Verdana"/>
</covertextblock>
<covertextblock align="center" size="20" font="Verdana" textposition="50%, 70%, 1">
<covertext content="[OBJNAME]" size="18"/>
</covertextblock>
</doccover>
<headerfooter widths="2,2,16,5" padding="10" id="footer1" height="40">
<headerfootercell content="Sivu" fontstyle="italic"/>
<headerfootercell content="[PAGENUMBER]" fontstyle="bold"/>
<headerfootercell content="[OBJCODE]" horizontalalign="right" fontstyle="bold"/>
<headerfootercell content="[DESCR]" horizontalalign="right" fontstyle="bold"/>
</headerfooter>
<headerfooter widths="2,2,16,5" padding="10" id="footer2" height="40">
<headerfootercell content="Sivu" fontstyle="italic" verticalalign="top"/>
<headerfootercell content="[PAGENUMBER]" fontstyle="bold" verticalalign="top"/>
<headerfootercell content="[OBJCODE]" horizontalalign="right" fontstyle="bold" verticalalign="top"/>
<headerfootercell content="[DESCR]" horizontalalign="right" fontstyle="bold" verticalalign="top"/>
</headerfooter>
<headerfooter id="header1" widths="1,1" padding="10">
<headerfootercell content="[OBJCODE]" horizontalalign="left" />
<headerfootercell content="[DATETIME]" horizontalalign="right" />
</headerfooter>
<parttablewidths="5,10,20,10,4" footerId="footer1" headerId="header1" nowrap="false" bookmarklabel="[OBJCODE] [DESCR]" headerrow_backgroundcolor="#1EA7CF"
headerrow_borderwidth="1" headerrow_border="3">
<headercell content="Nro" verticalalign="top" cellpadding="3" fontstyle="bold"/>
<headercell content="Koodi" verticalalign="top" cellpadding="3"/>
<headercell content="Kuvaus" verticalalign="top" cellpadding="3"/>
<headercell content="Kuvaus2" verticalalign="top" cellpadding="3"/>
<headercell content="Sivu" verticalalign="top" cellpadding="3"/>
<parttablecell content="[PNO]" cellpadding="3" border="3" verticalalign="top" fontstyle="bold"/>
<parttablecell content="[OBJCODE]" cellpadding="3" border="3" verticalalign="top"/>
<parttablecell content="[DESCR]" cellpadding="3" border="3" verticalalign="top"/>
<parttablecell content="[DESCR2_FI]" cellpadding="3" border="3" verticalalign="top"/>
<parttablecell content="[PAGENUMBER]" cellpadding="3" border="3" verticalalign="top"/>
</parttable>
<partimage footerId="footer1" headerId="footer2" bookmarklabel="[OBJCODE] [DESCR], piirustus"/>
</document>
document -elementti
Tämä elementti on dokumentin ylin taso, määrittää siis koko dokumenttiin liittyviä asioita.
Mahdollisia lapsielementtejä ovat:
|
Elementin nimi |
Kuvaus |
|
index |
Sisällysluettelon määritykseen liittyvä elementti |
|
doccover |
Kansilehden määritykseen liittyvä elementti |
|
headerfooter |
Määrittää ylä- ja alatunnisteiden sisällöt |
|
parttable |
Määrittää osaluetteloon liittyvät tiedot |
|
partimage |
Määrittää osaluettelon kuvaan liittyvät tiedot |
|
statictable |
Määrittää staattisen taulukon sivulle |
|
nestedtable |
Määrittää sisäkkäin tulostettavan taulukon (taulukko taulukon sisällä) |
|
linebreak |
Sivulle sijoitettava rivinvaihto, käytetään esim. usean statictable kanssa |
|
pagebreak |
Sivulle tehtävä sivunvaihto, esim. statictablen käytön yhteydessä |
Mahdollisia attribuutteja ovat:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
Oletus |
|
pagesize |
PDF:n sivukoko, esim A4 |
A0…B6 |
A4 |
|
left |
Vasemman reunan marginaali pikseleinä |
0…n |
60 |
|
right |
Oikean reunan marginaali pikseleinä |
0…n |
60 |
|
top |
Yläreunan marginaali pikseleinä |
0…n |
60 |
|
bottom |
Alareunan marginaali pikseleinä |
0…n |
60 |
|
orientation |
Sivun orientaatio, portrait/landscape |
portrait/landscape |
landscape |
|
font |
Dokumentissa käytettävä fontti |
kaikki järjestelmässä olevat fontit |
Verdana |
|
size |
Dokumentissa käytettävän fontin koko |
1…n |
10 |
|
fontstyle |
Dokumentissa käytettävän fontin tyyli |
normal/italic/ bold/bolditalic |
normal |
|
color |
Dokumentissa käytettävän fontin väri |
värikoodi tekstinä/hexa |
#000000 |
|
author |
PDF:n metatietoja |
teksti |
Vertex Systems |
|
title |
PDF:n metatietoja |
teksti |
|
|
subject |
PDF:n metatietoja |
teksti |
PDF-booklet |
|
keywords |
PDF:n metatietoja |
teksti |
|
|
indexlabel |
Sisällysluettelon otsikko |
teksti |
[OBJCODE], [DESCR] |
|
indexlabelalt |
Sisällysluettelon otsikko silloin kun indexlabel:issa olevaa ehdollista otsikkoa esim LINKEDPROJECT.OBJNAME ei ole objektille määritelty |
teksti |
- |
|
indextitle |
Sisällysluettelon otsikko |
teksti |
Table Of Contents |
|
indexduplicates |
Attribuutti, jolla saa sisällysluettelosta duplikaatit pois |
true/false |
true |
|
print_indexheaderfooter |
Attribuutti, jolla saa kansilehdelle ylä- ja alatunnisteen |
true/false |
false |
|
defrootitem |
Muuttuja, jolla määritellään noudattaako nimikerakenteen päänimike mm. varaosakirjan luonnissa Kerää varaosakirjaan –tietoa (ts. päänimike ei ole varaosa, defrootitem=true, PDM-9313). |
true/false |
false |
index -elementti
Sisällysluettelon ulkoasun määrittävä elementti.
Mahdollisia lapsielementtejä ovat:
|
Elementin nimi |
Kuvaus |
|
level |
yhtä sisällyslettelon tasoa kuvaava elementti |
Mahdollisia attribuutteja ovat:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
|
font |
Käytettävä fontti |
kaikki järjestelmässä olevat fontit |
|
size |
Käytettävän fontin koko |
1…n |
|
fontstyle |
Käytettävän fontin tyyli |
normal/italic/bold/bolditalic |
|
color |
Käytettävän fontin väri |
värikoodi tekstinä/hexa |
level –elementti
Sisällysluettelon yhden tason ulkoasun määrittävä elementti.
Mahdollisia attribuutteja ovat:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
|
value* |
Numeerinen arvo, joka kertoo otsikkotason |
1…n |
|
font |
Käytettävä fontti |
kaikki järjestelmässä olevat fontit |
|
size |
Käytettävän fontin koko |
1…n |
|
fontstyle |
Käytettävän fontin tyyli |
normal/italic/bold/bolditalic |
|
color |
Käytettävän fontin väri |
värikoodi tekstinä/hexa |
doccover -elementti
Mahdollisia lapsielementtejä ovat:
|
Elementin nimi |
Kuvaus |
|
covertextblock |
Kuvaa kansilehdelle sijoitettavaa tekstiä |
Mahdollisia attribuutteja ovat:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
|
coverpath |
Kansilehdeksi käytettävän tiedoston sijainti |
polku tekstinä (1) |
|
coveraddtext |
Kansilehdelle sijoitettava teksti |
teksti (2) |
|
textposition |
Kansilehdelle sijoitettavan tekstin sijainti |
x, y, sivunumero (2,3) |
|
size |
Kansilehdelle sijoitettavan tekstin koko |
1…n (2) |
covertextblock -elementti
Elementti, joka mahdollistaa yhden tai useamman tekstiosan sijoituksen kansilehdelle. Mahdollisia lapsielementtejä ovat:
|
Elementin nimi |
Kuvaus |
|
covertext |
Elementti kansilehdelle sijoitettavaa tekstiä varten, vähintään yksi määriteltävä |
Mahdollisia attribuutteja ovat:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
|
align |
Kansilehdelle sijoitettavan tekstin sijoitus |
center/left/right (4) |
|
font |
Kansilehdelle sijoitettavan tekstin fontti |
kaikki järjestelmässä olevat fontit |
|
size |
Kansilehdelle sijoitettavan tekstin koko |
1…n |
|
fontstyle |
Kansilehdelle sijoitettavan tekstin tyyli |
normal/italic/bold/bolditalic |
|
textposition* |
Kansilehdelle sijoitettavan tekstin sijainti |
x, y, sivunumero (3) |
covertext -elementti
Mahdollisia attribuutteja ovat:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
|
content* |
Kansilehdelle sijoitettava teksti |
teksti |
|
font |
Kansilehdelle sijoitettavan tekstin fontti |
kaikki järjestelmässä olevat fontit |
|
size |
Kansilehdelle sijoitettavan tekstin koko |
1…n |
|
fontstyle |
Kansilehdelle sijoitettavan tekstin tyyli |
normal/italic/bold/bolditalic |
Huom.
-
polku voidaan määritellän suhteelliseksi käyttäen \$SystemRoot\$ -määritystä tekstin alussa
-
vanha tapa, käytä covertextblock-elementtiä
-
esim. 200, 300, 1 tai 20%, 50%, 2, eli koordinaatit pikseleinä tai prosenttiarvoina
-
kun align on määritelty, se korvaa textposition-attribuutin x-koordinaatin (eli tasaa tekstin joko vasemmalle, keskelle tai oikealle)
headerfooter -elementti
Mahdollisia lapsielementtejä ovat:
|
Elementin nimi |
Kuvaus |
|
headerfootercell |
Ylä/alatunnisteen yhtä solua kuvaava elementti |
Mahdollisia attribuutteja ovat:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
Oletus |
|
id |
Ylä/alatunnisteen id |
teksti / DEFAULTHEADER / DEFAULTFOOTER (1) |
- |
|
widths |
headerfootercell-solujen suhteelliset leveydet |
esim. 2,2,4 |
1 |
|
padding |
Taulukon sisällön etäisyys reunasta |
0…n |
10 |
|
background-image |
Ylä/alatunnisteen taustakuva |
polku tiedostoon |
none |
headerfootercell -elementti
Mahdollisia attribuutteja ovat:
|
Attribuutti |
Kuvaus |
Mahdollinen arvo |
Oletus |
|
border |
Solun reunaviiva |
0…15 (2) |
0 |
|
horizontalalign |
Solun sisällön vaakatason sijoitus |
left/right/center/justify |
left |
|
verticalalign |
Solun sisällön pystytason sijoitus |
top/bottom/middle/baseline |
bottom |
|
nowrap |
Solun sisällön automaattisen rivityksen esto |
true/false |
false |
|
cellpadding |
Solun reunan täyte, sisällön etäisyys reunasta |
0…n |
0 |
|
content |
Solun sisältö |
teksti |
- |
|
contentalt |
Solun sisältö silloin kun content:issa olevaa ehdollista sisältöä esim LINKEDPROJECT.OBJNAME ei ole objektille määritelty |
teksti |
- |
|
image |
Kuvan näyttäminen solussa |
polku/USER.ORGANIZATION.LOGO |
- |
|
scaledwidth |
Kuvan skaalattu leveys |
0…n (3) |
- |
|
scaledheight |
Kuvan skaalattu korkeus |
0…n (3) |
- |
|
BARCODE |
Viivakoodin tyyppi |
EAN-8, EAN-13, UPC-A, UPC-E |
EAN-13 |
|
BARCODEPDMATTRIBUTE |
Kentän/tietueen nimi, josta viivakoodin numeerinen arvo luetaan |
EAN13CODE (tms.), |
- |
|
BARCODEHEIGHT |
Viivakoodin korkeus tulosteessa (mm?) |
Suurempi kuin 1 (järkevä koko 10 ylöspäin) |
16 |
|
BARCODETEXTHEIGHT |
Viivakoodin yhteyteen tulostuvan tekstin (numeerinen koodi) korkeus (mm) |
0 = ei tekstiä lainkaan (järkevä koko 4 ylöspäin) |
16 |
|
BARCODEGUARD |
Tulostuuko pitkät loppu/alkuviivat |
true = |
false |
HUOM.
-
Jos ylä- tai alatunnisteen id:ksi määrittelee DEFAULTHEADER:n tai DEFAULTFOOTER:n, käytetään kyseistä tunnistetta oletuksena. Jos esimerkiksi parttable-elementille ei ole määritelty headerId-attribuutilla ylätunnistettä, käytetään ylätunnistetta jonka id on DEFAULTHEADER.
-
Solun reunaviiva muodostetaan arvojen 1,2,4 ja 8 yhdistelmistä, joissa 1=yläreuna, 2=alareuna, 4=vasen reuna ja 8=oikea reuna. Esim. arvolla 10 asetetaan soluun reunaviiva oikealle ja alas. Arvolla 0 ei reunaviivaa tehdä (oletus)
-
attribuutin image yhteydessä käytettävä attribuutti
parttable-elementti
Osaluettelon tulostamiseen käytetty elementti. Tulostaa taulukon, jossa ensimmäinen rivi on otsikkorivi, loput rivit osaluettelon rivejä. Mahdollisia lapsielementtejä ovat:
|
Elementin nimi |
Kuvaus |
|
headercell |
Otsikkorivin solua kuvaava elementti |
|
parttablecell |
Osaluettelorivien soluja kuvaava elementti |
Mahdollisia attribuutteja ovat:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
Oletus |
|
widths* |
Kenttien leveydet pilkulla erotettuna |
esim. 2,2,4 |
1 |
|
keys |
Osaluettelon kenttien nimet pilkulla erotettuna |
esim. [PNO],[OBJCODE],[DESCR] |
null |
|
labels |
Osaluettelon kenttien otsikot pilkulla erotettuna |
esim. Nro, Koodi, Kuvaus |
null |
|
headerId |
Ylätunnisteen id |
headerfooter-elementin id |
- |
|
footerId |
Alatunnisteen id |
headerfooter-elementin id |
- |
|
bookmarklabel |
Teksti, joka tulee pdf:n vasemman reunan kirjanmerkkivalikkoon |
teksti |
- |
|
cellpadding |
Taulukon kaikkien solujen sisällön etäisyys reunasta |
0…n |
0 |
|
headerrow_* |
Otsikkovin yleisten attribuuttien määrittelyyn |
esim. headerrow_backgroundcolor, otsikkorivin taustaväri |
- |
|
recursive |
Rekursiivisen osaluettelon tulostukseen käytetty elementti, tulostaa koko osaluettelon yhteen taulukkoon |
true/false |
false |
|
tabsize |
Alitasojen sisennyksen määrittelevä attribuutti, käytetään rekursiivisessa taulukossa |
esim. 5% (taulukon leveydestä) |
5% |
|
maxrowstopage_landscape |
Osaluettelon maksimirivimäärä yhtä sivua kohden(vaaka-arkki) valinnan”Monista kuva jos osaluettelojakautuu usealle sivulle”yhteydessä |
1-n (fonttikoosta riippuen) |
28 |
|
maxrowstopage_portrait |
Osaluettelon maksimirivimäärä yhtä sivua kohden(pysty-arkki) valinnan”Monista kuva jos osaluettelojakautuu usealle sivulle”yhteydessä |
1-n (fonttikoosta riippuen) |
40 |
headercell ja parttablecell -elementit
Osaluettelon otsikkonrivin (headercell) ja sisältörivien (parttablecell) soluja kuvaavat elementit.
Mahdollisia attribuutteja ovat:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
Oletus |
|
border |
Solun reunaviiva |
0…15 (2) |
0 |
|
horizontalalign |
Solun sisällön vaakatason sijoitus |
left/right/center/justify |
left |
|
verticalalign |
Solun sisällön pystytason sijoitus |
top/bottom/middle/baseline |
bottom |
|
nowrap |
Solun sisällön automaattisen rivityksen esto |
true/false |
false |
|
cellpadding |
Solun reunan täyte, sisällön etäisyys reunasta |
0…n |
0 |
|
content* |
Solun sisältö |
teksti |
- |
|
alt |
Solun sisältö silloin kun content:issa olevaa ehdollista sisältöä esim LINKEDPROJECT.OBJNAME ei ole objektille määritelty |
teksti |
- |
partimage -elementti
Mahdollisia attribuutteja ovat:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
|
bookmarklabel |
Teksti, joka tulee vasemman reunan pdf:n kirjanmerkkivalikkoon |
teksti |
|
headerId |
Ylätunnisteen id |
headerfooter-elementin id |
|
footerId |
Alatunnisteen id |
headerfooter-elementin id |
Tekstisisältö
Ohjaustiedostossa voidaan määritellä, mitä tekstiä missäkin näytetään. Tekstisisältö voi olla staattista tekstiä, tai kyseessä olevan objektin attribuutteja. Myös tiettyjä varattuja sanoja voidaan käyttää tiettyissä rajoissa.
Esimerkiksi teksti
[OBJCODE], [DESCR]
Muuttuu pdf:ssä muotoon
Objektin tunnus, objektin kuvaus
Esimerkiksi osaluettelossa tieto haetaan kyseessä olevalta osalta. Osaluettelon ylä/alatunnisteiden kohdalla tieto haetaan aina kyseisen rakenteen äitinimikkeeltä.
Varattuja sanoja:
|
Varattu sana |
Käyttäytyminen |
|
ROOT.(ominaisuustieto) |
Ominaisuustieto haetaan aina päätason nimikkeeltä, [ROOT.OBJCODE] tulostaa ko. kohtaan pdf-dokumentissa päänimikkeen tunnuksen |
|
DATE |
Päivämäärän tulostus |
|
TIME |
Ajan tulostus |
|
DATETIME |
Päivämäärän ja ajan tulostus |
|
USER.* |
Käyttäjän tietoja, esim. USER.ORGANIZATION.NAME |
|
PAGENUMBER |
Osaluettelossa käytettävä, ilmaisee kyseisen osan sivunumeron |
Muut elementit
Seuraavassa on lueteltu harvemmin käytettyjä ja erikoisempia elementtejä
statictable, staticrow ja staticcell -elementit
Staattinen taulukko ja sen elementit, joita käytetään tulostamaan ns. html-tyyppinen taulukko pdf-dokumenttiin. Sisältö (content) kirjoitetaan sellaisenaan tai haetaan haluttu tietosisältö tuotetietokannasta (esim. käyttäjätiedot, ominaisuustiedot tai esikatselukuva).
<statictable widths="1,1" border="0" >
<staticrow>
<staticcell content="Asiakas:" fontstyle="bold" />
<staticcell content="[USER.ORGANIZATION.NAME]" />
<staticcell content="Toimitusosoite:" fontstyle="bold" />
<staticcell content="[USER.ORGANIZATION.STREETADDRESS]\n[USER.ORGANIZATION.CITY]" />
<staticcell content="Tuote: " />
<staticcell content="[ROOT.OBJCODE]" />
<staticcell content="Tuotekuva:" />
<staticcell image="[ROOT.PREVIEWIMAGE]" scaledwidth="200" scaledheight="200"/>
</staticrow>
</statictable>
nestedtable -elementti
Sisäkkäisten ja rekursiivisten taulukoiden tulostukseen käytetty elementti. Esimerkiksi osaluettelon solu voidaan korvata nestedtable-elementillä.
<parttable widths="10,4" recursive="true" tabsize="5%" >
<nestedtable widths="1,10" border="0">
<parttablecell content="[DESCR1_EN]" verticalalign="middle" colspan="2" fontstyle="bold" />
<parttablecell content="" cellpadding="1"/>
<parttablecell content="[DESCRIPTION2_EN]" verticalalign="middle" cellpadding="1" />
<parttablecell content="" cellpadding="1"/>
<parttablecell content="[NOTE]" verticalalign="middle" cellpadding="1" fontstyle="bolditalic" />
</nestedtable>
<parttablecell content="[PREVIEWIMAGE]" scaledwidth="60" scaledheight="100" />
</parttable>
linebreak -elementti
Mahdollistaa rivinvaihdon käytettäessä staattisia taulukoita.
Mahdollisia attribuutteja:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
|
count |
Rivinvaihtojen lukumäärä |
1…n |
pagebreak -elementti
Mahdollistaa sivunvaihdon käytettäessä staattisia taulukoita.
Mahdollisia attribuutteja:
|
Attribuutin nimi |
Kuvaus |
Mahdollinen arvo |
|
count |
Sivunvaihtojen lukumäärä |
1…n |