Avatar billede limemedia Nybegynder
08. november 2002 - 11:10 Der er 11 kommentarer og
1 løsning

XML -> bla. PDF

Jeg sidder og udtænker et smart system, hvor jeg skal bruge XSLT til at konvertere fra et XML format til bla PDF inkl. avanceret opsætning. Pt. er planlagt at anvende PHP og Sablotron - måske Apache's Xalan. Operativsystemet bliver FreeBSD og måske Redhat Linux til udvikling

Jeg søger lidt efter erfaringer, gode råd og hvad man har brugt til konverteringen og hvordan resultatet er blevet. Jeg har kigget lidt på Cocoon, men håber på ikke alt for meget ekstra skal installeres for at få en så smidig installation som muligt...

Ser frem til svar hvis nogen,

/ Lars
www.ljweb.com
Avatar billede janegil Nybegynder
08. november 2002 - 12:23 #1
Tror du skal være hard for å konvertere direkte fra XML til PDF? Tror du skal transformere til XSL, og bruke et ferdig verktøy til å transformere videre til PDF. Men jeg vet ikke hvilket.

Derimot har jeg gode erfaringer med Sablotron. Lynrask. Kan transformere et dokument raskere enn XML Spy klarer å gjemme det på disken.
Avatar billede tmo Nybegynder
08. november 2002 - 12:52 #2
Hej Lars

Først: Jeg har brugt Resin som platform for udvikling. Har herefter lavet servlets/jsp/beans til at styre indhold, herunder skabelse af PDF dokumenter.
Janegil har ret i at det ikke er optomalt at konvertere direkte fra XML til PDF. Brug XSL som kodegenerator.

Et XML dokument og et XSL dokument skaber tilsammen et XSL-FO dokument. Formatet FO er anderledes end HTML, da det ikke vises direkte, men kan bruges til at generere andre formater som f.eks. et PDF-dokument. Til dette har jeg brugt apache FOP (http://xml.apache.org/fop/)

Resultatet er blevet ok, men xsl-fo er en er meget omfangsrigt sprog. Kig lidt på http://www.renderx.com/Tests/doc/html/tutorial.html#d1e28
Avatar billede limemedia Nybegynder
08. november 2002 - 13:06 #3
Jane >> Sablotron'en er spaendende, men jeg "tror" mere paa Xalan fra Apache Foundation. Samtidig vil maaske Cocoon arbejde bedre med Apache software - hvis cocoon bliver valget
Tmo >> Netop dertil naaede jeg ogsaa, men har ikke dykket ned i XML-FO hvis der skulle ligge en anden loesning under naesen paa mig som jeg ikke har opdaget.

Kigger mere paa det...
Avatar billede limemedia Nybegynder
08. november 2002 - 13:10 #4
hoerer lige i minoeresnegl at Jane hedder Jan :) ups
Avatar billede limemedia Nybegynder
08. november 2002 - 13:33 #5
Kiggede lidt paa XEP der koerer Java... Kender i evt noget der koerer som C++ eller lign ?
Avatar billede janegil Nybegynder
08. november 2002 - 14:21 #6
"XSL-FO vises ikke direkte". Stemmer, hittil, men jeg tror nok meningen er at en webbrowser skal kunne vise XSL like så vel som HTML. Dessuten at applikasjoner vil komme til å generere XSL, heller enn bruke rå prindtdrivere direkte – føler meg trygg på at det er lettere å programmere mot MXL -> XSLT -> XSL enn mot en printer. Jeg forestiller meg at XSL etterhvert vil erstatte mye av PDF-bruken. (I konkurranse med SVG:)
Avatar billede limemedia Nybegynder
08. november 2002 - 14:27 #7
janegil >> korrekt... men ser man paa hvordan visse virksomheder febrilsk stadig haenger fast i brugen af Netscape4, varer det laenge inden man kan sige hovedparten kan laese XSL direkte i browseren. Jeg leder selvfoelgelig efter loesningen der kan anvendes baade nu og senere ...
Avatar billede tmo Nybegynder
08. november 2002 - 15:23 #8
Både nu og senere bør man vel anvende "xml + xsl -> FO -> FOP -> PDF" serversite. Det eneste det kræver er at man har en  pdf reader installeret. 

Jeg har de bedste erfaringer med at arbejde serversite med transformation. Såsnart det ligges clientsite skal der tages højde for browser version/type, OS osv.
PS. se http://www.computerworld.com/developmenttopics/websitemgmt/story/0,10801,71364,00.html for netscape(ca. 7% bruger netscape, hvilket er ok. Dette tal bliver helt sikkert større pga. open source projekter i det offentlige. Derfor bør en løsning passe til både IE og netscape)
Avatar billede limemedia Nybegynder
08. november 2002 - 15:34 #9
XML egner sig udelukkende til arbejde "backend". Jeg er helt enig i at "alle" browsere skal understoettes (test mit eget website) og ogsaa derfor jeg vil praesentere indholdet paa mit projekt i baade HTML, PDF og andre formater - jeg oensker ikke at frasortere brugere...

Det jeg mest leder efter er OpenSource programmer. Med OpenSource og et budget der ligger omkring et et-cifret beloeb haaber jeg paa det findes. XML klares gennem EXPAT, XSLT gennem Sablotron (evt XALAN) og derfra mangler jeg alternativet. RenderX koster i den skrabede 80$ som omend et lille beloeb ikke var "plan a".

Jeg er stadig ikke helt vild med Java til opgaven og haaber paa C++ eller et lign program til at udfoere den endelige konvertering for mig. Projektet er helt privat som hobby, hvorfor jeg sagtens kan forestille mig at oprette et projekt paa Sourceforge der kan resultere i et program/plugin der kan haandtere nemmere konvertering.
Avatar billede limemedia Nybegynder
10. november 2002 - 09:08 #10
dykket lidt mere ned i emnet... prøver med en XALAN med en FOB - således alt holdes opensource.
Avatar billede janegil Nybegynder
11. november 2002 - 12:20 #11
"baade HTML, PDF og andre formater" - og hvis du ønsker å stimulere til gjenbruk og analyse av informasjonen du legger ut, så bør XML være blandt de formatene.

Skulle tro ljweb.com er den typen site som ønsker å bli analysert og gjenbrukt?
Avatar billede limemedia Nybegynder
11. november 2002 - 14:04 #12
XML er underforstaaet da det er det format jeg skaber alle andre formater ud fra. Jeg er igang med at kigge DocBook formatet dybt i oejnene. Fra XML publiceres saa til HTML, Tekst, PDF maaske RDF eller lign...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester