Forum: PC-Programmierung PDF-Datei automatisch ausfüllen


von grundschüler (Gast)


Lesenswert?

ich arbeite mit vb-net und habe damit u.a. eine Adressdatenbank als 
txt-Datei angelegt, mit der ich word.docs automatisch generieren kann. 
Das ganze geht im Wesentlichen mit
"Imports Microsoft.Office.Interop"
Man kann dann über vb-net auf word zugreifen.

Nun brauche ich das gleiche für PDF-Ausfüllformulare. Es geht also 
darum, in PDF-Formulardateien Datensätze aus dem txt-file einzulesen. 
Ich arbeite mit PDF-Viewer. Adobe will ich wegen der nervigen Werbung 
möglichst nicht einsetzen.

Gibt es eine Möglichkeit, aus VB-net auf PDF-Dateien zuzugreifen? 
Hilfreich wäre auch ein PDF-Programm mit Makro-Unterstützung.

Bin für jede Hilfe dankbar...

von Planlos (Gast)


Lesenswert?

Es geht um Formularfelder im PDF, korrekt?

Für diese gibt es ein eigenes Dateiformat, "(X)FDF", das nur die reinen 
Formulardaten enthält.

Das (X)FDF-File kannst du auch mit VB schreiben (ist mehr oder weniger 
ein Textformat oder XML), und dann per externem Tool oder Library die 
FDF-Daten in die PDF-Forlage einzusetzen.

Glücklicherweise gibt es zu pdftk, was ich für sowas einsetzen würde, 
auch VB-Bindings, damit wird's zum Dreizeiler:

https://www.pdftron.com/pdfnet/samplecode/FDFTest.vb.html

von Planlos (Gast)


Lesenswert?

Nachtrag: Sorry, browser-tabs verwechselt. Das verlinkte Beispiel oben 
gehört nicht zu pdftk, sondern zu einer anderen Lösung.

von Klaus P. (Gast)


Lesenswert?


von ?!? (Gast)


Lesenswert?

Planlos schrieb:
> Nachtrag: Sorry, browser-tabs verwechselt. Das verlinkte Beispiel
> oben
> gehört nicht zu pdftk, sondern zu einer anderen Lösung.

Und wo ist jetzt das richtige Beispiel, der Dreizeiler?

von Planlos (Gast)


Lesenswert?

?!? schrieb:
> Und wo ist jetzt das richtige Beispiel, der Dreizeiler?

der Dreizeiler war in dem verlinkten Beispiel drinnen. Dafür musst du 
aber wohl Geld auf den Tisch legen.
1
 Using doc As PDFDoc = New PDFDoc("INPUT.pdf")
2
 doc.FDFMerge(... FDF-Daten)
3
 doc.Save("OUTPUT.pdf")


Mit PDFtk ("server version" für windows herunterladen) hast du eine 
GPL-Lösung.
https://www.pdflabs.com/tools/pdftk-server/

Keine Sorge, der GPL-Code ist in einem gesonderten Binary, du musst 
deinen Quelltext nicht rausrücken. Nur evtl. einen kleinen Hinweis auf 
PDFtk in deiner "about"-Box unterbringen, und der Installer muss halt 
die GPL als Text-Dokument mit installieren.

Im Programm musst du dein (X)FDF-File schreiben, und pdftk.exe mit 
"fill-form"-Parameter ausführen.
https://www.pdflabs.com/docs/pdftk-man-page/#dest-op-fill-form

von grundschüler (Gast)


Lesenswert?

Vielen Dank für die konstruktiven Beiträge. PDFTron schau ich mir am WE 
an.

von ge-nka (Gast)


Lesenswert?

1.) vb-->fdf, fdf-importieren in dein PDF Programm (von Hand).
2.) vb-->bat(mit fdf)-->PDF Programm-->bat löschen. (dein PDF Programm 
soll die Komandozeile unterstützen)
3.) vb-->bat(mit JavaScript)-->PDF Programm-->bat löschen. (dein PDF 
Programm soll die Komandozeile unterstützen)

von ge-nka (Gast)


Lesenswert?

4.) PDF Datei als Vorlage, dort über die Java Konsole Javascript 
ausführen.
Der Script kopiert PDF-Datei(sich selbst) mehrmals, Daten zum ausfühlen 
nimmt er aus der Textdatei.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.