Dokumentenübergreifende Feldsynchronisation zwischen PDF-Dokumenten

InkontinenziaPoback

Neues Mitglied
Ich möchte in einem PDF-Portfolio dafür sorgen, dass wenn ich in Dokument 1 in Texfeld1 einen Text schreibe, dass der Text dann im Dokument 2 in dem gleichnamigen Textfeld1 erscheint. Innerhalb eines einzelnen Dokuments funktioniert das hervorragend.

Ich habe bislang verschiedene Codes ausprobiert, aber es scheitert jedes Mal. Möglicherweise ist das Problem, dass Adobe die anderen Dokumente im Portfolio nicht finden kann, obwohl sie angezeigt werden?

Hat jemand eine Idee woran mein Vorhaben scheitern könnte und wie ich es dennoch umsetzen kann?
 

KonradN

Super-Moderator
Mitarbeiter
Ich bin in dem Bereich kein Experte, aber Acrobat hat ja gewisse Security eingebaut, damit eben ein PDF nicht das System verändern kann.

Bezüglich JavaScript sind einige Einstellungen möglich:

Die Möglichkeiten, die ich hier sehe:
a) trusted JavaScript - evtl. reicht es, das dem Dokument vertraut wird.
b) User JavaScript - das sind also JavaScript Dateien, die lokal auf dem Rechner abgelegt werden und die mehr machen dürfen. Da kannst Du dann Funktionen definieren, die du dann aus dem PDF aufrufen kannst: https://www.pdfscripting.com/public/Using-Trusted-Functions.cfm

Ansonsten noch der Hinweis: Das ist JavaScript und nicht Java - ich verschiebe daher einmal die Frage in ein anderen Bereich
 

Oneixee5

Top Contributor
Meiner Meinung nach können das verschiedene Produkte von Adobe von Haus aus. Die Form-Felder müssen nur die gleichen Namen haben.

Um das Ganze selbst umzusetzen, könnte ich mir vorstellen die PDF-Dateien eines Ordner auf Änderungen zu überwachen (WatchService-API) - oder auch nur einzelne Dateien.
1. Bei Änderung einer Datei sucht man die Form's in der PDF-Datei und deren Felder (über Namen) und Werte heraus (bspw. Apache PDFBox).
2. Im Zielordner macht man das Gleiche - alle Dateien nach Form's durchsuchen, Felder nach Namen u. Werte usw (bspw. Apache PDFBox).
3. So kann man leicht Unterschiede finden und die Änderungen übernehmen - synchronisieren. (bspw. Apache PDFBox).
Das sollte auch bidirektional funktionieren, natürlich mit der entsprechenden Vorsicht. Für bessere Performanz kann man auch einen Index verwalten, dann muss man nicht jedes Mal alle Dateien parsen.
Falls es nicht ausreicht Dateien und Ordner auf Änderungen zu überwachen, könnte ich mir auch eine Git-Pipeline dafür vorstellen. Voraussetzung ist natürlich, dass die PDF-Dateien in einem Git-System verwaltet werden.
 

Oben