[Pdf] Meest efficiente oplossing voor keyword based merge

Pagina: 1
Acties:

  • stylee
  • Registratie: December 2000
  • Laatst online: 04-09-2021

stylee

blah zeg ik je

Topicstarter
Hallo,

Ik ben bezig met een e-commerce applicatie waarin na het plaatsen van een bestelling er een aantal contracten worden gegenereerd in PDF formaat.

Deze contracten moeten dus ingevuld worden met een aantal kerngegevens (bijvoorbeeld ordernummer, naam, etc). De klant print ze uit en stuurt of fax't ze vervolgens terug.

De opdrachtgever levert deze contracten in Microsoft Word formaat aan. Vanaf hier heb ik dus een tweetal opties, het ene is om d.m.v een of andere PDF library de documenten 'na' te proberen maken (ik werk hier met PHP dus dat word dan PDFLib Lite) en alle tekst handmatig met functies te genereren; inefficient want er zijn vele verschillende contracten en als er nu iets kleins wijzigt mag er weer flink geklopt worden.

De tweede mogelijkheid zou zijn om door middel van Adobe Acrobat de PDF's te generen en dan op de een of andere manier een aantal basisvelden te laten vervangen door een applicatie.

Ik ben al een tijdje op zoek naar een applicatie, code voorbeeld (taal maakt niet uit) of iets anders (mag zelfs commercieel zijn, als het maar op linux draait) om een simpele 'merge' te doen aan de hand van een keyword maar heb nog niks nuttigs kunnen vinden.

De algemene conclusie schijnt te zijn dat op het moment dat een PDF gegenereerd is, deze vrij immutable is.

Ik zat er zelf aan te denken om mischien de PDF specs erbij te pakken en handmatig te proberen om de streams te decoden, tekst te vervangen en/of meta-data aan te passen en te hopen dat de boel werkt. Maar ik heb geen idee of dit haalbaar is. Er zijn op zich tools die de tekst kunnen extracten maar ben niks tegen gekomen dat de tekst ook kan replacen.

Een eventuele andere optie zou PDF Forms kunnen zijn maar hier heb ik totaal geen ervaring mee, kan iemand toevallig uitleggen hoe dit gebruikt zou kunnen worden om deze 'merge' te doen?

Mochten jullie andere ideeën hebben waarop dit het meest efficient gedaan kan worden dan hoor ik het graag.

Alvast bedankt.

[ Voor 5% gewijzigd door stylee op 29-09-2004 13:26 ]


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Ik begreep ook dat PDF een soort van JavaScript kan bevatten. Wellicht dat het open genoeg is om bepaalde variabele mee te geven?

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 14:53
Je zou er over kunnen denken om van de PDF van een leeg formulier een afbeelding te maken. Vervolgens maak je een interface waarmee je met de muis gebieden kan selecteren en die je een naam geeft. Van die velden sla je coördinaten op waar je dan een stukje tekst plaatst.

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 15:11

TeeDee

CQB 241

Als je ik goed begrijp wil je "online" en "automagisch" een x-aantal gegevens in een redelijk standaard PDF document stoppen?

Als dat alles is, dan kan je toch van je PDF document een PDF form maken, waarbij je de formelementen laat vullen door de server (hell, zelfs een form value zou je kunnen requesten en in de pdf zetten).

Een pdf form maak je simpel in Acrobat (bijvoorbeeld) met de Forms toolbox.

Dit kan afaik allemaal met PDFLib Lite.

[ Voor 9% gewijzigd door TeeDee op 29-09-2004 14:34 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
2e idee, wat ik zelf ook nog wel eens gebruik. Van je documenten maak je png'tjes / tiffjes. Je spreekt met je opdrachtgever een paar documentsoorten af ( voor wat betreft waar de invoervelden staan ) en creeer je een "lege" pdf ( met alleen de ingevulde gegevens ) en je zet het png'tje / tiffje van het document als achtergrond van je pdf.

Klant heeft een nieuw document (document b ) met invoervelden op dezelfde plek als een eerder document ( document a ) dan hoeft de klant alleen het tiffje van document a te overschrijven met het tiffje van document b.

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 14:53
Gomez12 schreef op 29 september 2004 @ 15:19:[...] en creeer je een "lege" pdf ( met alleen de ingevulde gegevens ) en je zet het png'tje / tiffje van het document als achtergrond van je pdf.
Wat ik net gepost heb dus ;)

Even een vraagje: wat mag je allemaal op de server? Mag je bijvoorbeeld een Adobe pakket installeren?

  • stylee
  • Registratie: December 2000
  • Laatst online: 04-09-2021

stylee

blah zeg ik je

Topicstarter
Ik mag alles op de server maar het is een linux bak, ik ken geen versie van adobe acrobat die daarob draait.

Wat was jouw idee dan?

  • stylee
  • Registratie: December 2000
  • Laatst online: 04-09-2021

stylee

blah zeg ik je

Topicstarter
Even voor het archief:

Met adobe acrobate input tekst velden genereren, de pdf opslaan als 'template'.

Met php met behulp van de FDF library een .fdf bestand genereren en vervolgens met http://www.accesspdf.com/pdftk/ met de volgende aanroep mergen naar een platte PDF:


code:
1
pdftk input.pdf fill_form data.fdf output out.pdf flatten


Werkt perfect :9~
Pagina: 1