Hallo Forenmitglieder,
ich suche nach einer Möglichkeit, ein JavaScript automatisiert in ein PDF einzubringen. Die Stapelverarbeitung in Acrobat pro kann nur den Bestand mit dem Script bearbeiten, aber das Script nicht in das Dokument einfügen (Jedenfalls ich kann das nicht.). Da ich ca. 10.000 Dokumente mit dem Script versehen soll, bin ich an einer automatisierten Lösung interessiert. Einzeln öffen und mit Copy-Paste arbeiten, ist keine echte Alternative. Oder besteht die Möglichkeit das JavaScript im Acrobat selbst zu hinterlegen, also nicht im Dokument, so dass es allen geöffneten PDF zur Vefügung steht (Ähnlich den VBA´s in Word)? Das kann mein Problem auch lösen.
MadTax
JavaScript in PDF automatisch einfügen
-
- Beiträge: 6
- Registriert: 07.08.2010, 12:27
-
- Beiträge: 6
- Registriert: 07.08.2010, 12:27
JavaScript in PDF automatisch einfügen
Liebe Forenmitglieder,
ich habe nun ein Zwischenergebnis: Ich habe ein leeres PDF erzeugt, welches das Javascript enthält (Ein Dummy-File sozusagen). Im Acrobat pro habe ich eine Sequenz (Stapel-Javascript) geschrieben, dass das Dummy-File automatisch einbaut und wieder löscht.
{
this.insertPages({nPage:this.numPages-1,
cPath:"/F/Download/PfadName.pdf"});
this.deletePages({nStart:this.numPages-1});
}
Das Javascript aus dem Dummy wird so auf das PDF übertragen. Das klappt grundsätzlich. Aber noch nicht so, wie ich mir das vorstelle. Es geht, wenn ich einstelle: Anwenden auf geöffnete PDf (da muss ich noch einzeln die Änderungen bestätigen, was nervt) oder auf Dateien auswählen. Es geht nicht, wenn die Sequenz auf einen Ordner (also die im Ordner befindlichen Dateien) angewendet werden soll. Dann dauert es ein wenig und die Fehlermeldung heißt, es wurde keine Datei verändert. Weiß jemand Rat?
Das von mir eingebaute Javascript macht auch Schwierigkeiten. Es ist auf Document-Level. Im Acrobat und im Acrobat pro funktioniert es wunderbar. Nur beim Öffnen im Reader wird es nicht ausgeführt. Ich habe versucht eine Anleitung zu bekommen, welche Javascripts im Reader gehen und welche nicht. Kann mir da jemand helfen?
MadTax
ich habe nun ein Zwischenergebnis: Ich habe ein leeres PDF erzeugt, welches das Javascript enthält (Ein Dummy-File sozusagen). Im Acrobat pro habe ich eine Sequenz (Stapel-Javascript) geschrieben, dass das Dummy-File automatisch einbaut und wieder löscht.
{
this.insertPages({nPage:this.numPages-1,
cPath:"/F/Download/PfadName.pdf"});
this.deletePages({nStart:this.numPages-1});
}
Das Javascript aus dem Dummy wird so auf das PDF übertragen. Das klappt grundsätzlich. Aber noch nicht so, wie ich mir das vorstelle. Es geht, wenn ich einstelle: Anwenden auf geöffnete PDf (da muss ich noch einzeln die Änderungen bestätigen, was nervt) oder auf Dateien auswählen. Es geht nicht, wenn die Sequenz auf einen Ordner (also die im Ordner befindlichen Dateien) angewendet werden soll. Dann dauert es ein wenig und die Fehlermeldung heißt, es wurde keine Datei verändert. Weiß jemand Rat?
Das von mir eingebaute Javascript macht auch Schwierigkeiten. Es ist auf Document-Level. Im Acrobat und im Acrobat pro funktioniert es wunderbar. Nur beim Öffnen im Reader wird es nicht ausgeführt. Ich habe versucht eine Anleitung zu bekommen, welche Javascripts im Reader gehen und welche nicht. Kann mir da jemand helfen?
MadTax
-
- Beiträge: 6
- Registriert: 07.08.2010, 12:27
JavaScript in PDF automatisch einfügen
Hi Forenmitglieder,
ich habe meinen vorstehnden Lösungsvorschlag nochmal überarbeitet und bin jetzt soweit, dass ich die durch ein Folder-Level-Javascript veränderte "Speichern unter ..." (SaveAs) Funktion zum Einfügen des Javascripts in das PDF auf Document-Level benutze. Die lösung mit dem Dummy-File war etwas holprig.
Ich will das aber automatisieren, so dass das PDF beim Öffnen ohne weiteres zutun das Javascript auf Dokument-Level "verpasst" bekommt.
Kann mir jemand verraten, wie ich ein Javascript auf Folder-Level verfasse, dass automatisch startet, wenn ein PDF geöfffnet wird? Document-Level schaffe ich selber, aber das hilft mir nichts.
MadTax
ich habe meinen vorstehnden Lösungsvorschlag nochmal überarbeitet und bin jetzt soweit, dass ich die durch ein Folder-Level-Javascript veränderte "Speichern unter ..." (SaveAs) Funktion zum Einfügen des Javascripts in das PDF auf Document-Level benutze. Die lösung mit dem Dummy-File war etwas holprig.
Ich will das aber automatisieren, so dass das PDF beim Öffnen ohne weiteres zutun das Javascript auf Dokument-Level "verpasst" bekommt.
Kann mir jemand verraten, wie ich ein Javascript auf Folder-Level verfasse, dass automatisch startet, wenn ein PDF geöfffnet wird? Document-Level schaffe ich selber, aber das hilft mir nichts.
MadTax
JavaScript in PDF automatisch einfügen
Hallo [url=mailto:madtax@hotmail.de]madtax@hotmail.de[/url],
Haben Sie es schon mit dem JS Objekt "addScript" versucht?.
Gruß,
Walde
Haben Sie es schon mit dem JS Objekt "addScript" versucht?.
Gruß,
Walde
-
- Beiträge: 6
- Registriert: 07.08.2010, 12:27
JavaScript in PDF automatisch einfügen
Hallo Walde,
mit addScript arbeite ich jetzt. Das ist ja gerade die Änderung gegenüber dem Dummy-File. Das funktioniert auch. Nur möchte ich es arrangieren, dass sich das Folder-Level-Javascript von alleine (automatisch) startet, wenn eine PDF-Datei im Acrobat geöffnet wird. Dann würde über die im Folder-Level-Javascript verwendete addScript Funktion das Document-Level-Javascript eingefügt werden.
Hintergrund: Ich scanne alles. Der Scanner öffnet anschließend die erstellte Datei. Der Scanner kann nur Dateinamen vergeben, die sich anhand einer laufenden Nummer unterscheiden. Das Wiederfinden von PDF-Dokumenten anhand eines Ausdrucks ist deswegen sehr mühsam. Das Folder-Level-Javascript fügt in das PDF Felder ein und bestückt diese mit Dateinamen inkl. Pfad, Datum und Seitenanzahl. Ferner wird ein Document-Level-Javascript eingefügt. Das dient bei einem späteren Aufruf des PDF dazu, die Angaben zu aktualisieren. So kann die Datei in ein anderes Verzeichnis umgespeichert oder umbenannt werden, und die Anzeige (und ein eventueller Ausdruck) ist nach dem Aufruf der Datei aktuell. Ich habe dabei großen Wert darauf gelegt, dass im Document-Level-Script nur Funktionen verwendet werden, die auch der Reader beherrscht. Deshalb erfolgt die Aktualisierung auch, wenn das PDF "nur" mit dem Reader geöffnet wird.
Schön wäre es, wenn das Ausführen des Folder-Level-Javascripts nicht einzeln angestoßen werden müsste, sondern von alleine erfolgt. Mit Batch-Processing erreiche ich mein Ziel nicht, da ich das auch nach Erstellen der Datei durch den Scanner von Hand anstoßen müsste. Im Augenblick habe ich das Folder-Level-Javascript an ein angepasstes "Speichern unter ..." gehängt. So führe ich das Folder-Level-Javascript bei der Ablage des Scans im Dateisystem im Hintergrund aus. Nur manche Dateien müssen nirgendsanders gespeichert werden. Die können im Augenblick "Durchrutschen". Die würde ich aber sicher durch die Automation bearbeiten.
Mir ist bewusst, dass mit dem automatischen Ausführen Risiken verbunden sind. Malware könnte das ausnutzen. Aber der Scan-PC hat keinen Außenkontakt. Deshalb kommen keine Fremddateien darauf. Aufgrund dieser grundsätzlichen Gefahr vermute ich, dass mit Trusted-Funktionen bei der Realisation meiner Vorstellungen gearbeitet werden muss (wenn sie überhaupt möglich sind).
Grüße an alle Interessierten
MadTax
mit addScript arbeite ich jetzt. Das ist ja gerade die Änderung gegenüber dem Dummy-File. Das funktioniert auch. Nur möchte ich es arrangieren, dass sich das Folder-Level-Javascript von alleine (automatisch) startet, wenn eine PDF-Datei im Acrobat geöffnet wird. Dann würde über die im Folder-Level-Javascript verwendete addScript Funktion das Document-Level-Javascript eingefügt werden.
Hintergrund: Ich scanne alles. Der Scanner öffnet anschließend die erstellte Datei. Der Scanner kann nur Dateinamen vergeben, die sich anhand einer laufenden Nummer unterscheiden. Das Wiederfinden von PDF-Dokumenten anhand eines Ausdrucks ist deswegen sehr mühsam. Das Folder-Level-Javascript fügt in das PDF Felder ein und bestückt diese mit Dateinamen inkl. Pfad, Datum und Seitenanzahl. Ferner wird ein Document-Level-Javascript eingefügt. Das dient bei einem späteren Aufruf des PDF dazu, die Angaben zu aktualisieren. So kann die Datei in ein anderes Verzeichnis umgespeichert oder umbenannt werden, und die Anzeige (und ein eventueller Ausdruck) ist nach dem Aufruf der Datei aktuell. Ich habe dabei großen Wert darauf gelegt, dass im Document-Level-Script nur Funktionen verwendet werden, die auch der Reader beherrscht. Deshalb erfolgt die Aktualisierung auch, wenn das PDF "nur" mit dem Reader geöffnet wird.
Schön wäre es, wenn das Ausführen des Folder-Level-Javascripts nicht einzeln angestoßen werden müsste, sondern von alleine erfolgt. Mit Batch-Processing erreiche ich mein Ziel nicht, da ich das auch nach Erstellen der Datei durch den Scanner von Hand anstoßen müsste. Im Augenblick habe ich das Folder-Level-Javascript an ein angepasstes "Speichern unter ..." gehängt. So führe ich das Folder-Level-Javascript bei der Ablage des Scans im Dateisystem im Hintergrund aus. Nur manche Dateien müssen nirgendsanders gespeichert werden. Die können im Augenblick "Durchrutschen". Die würde ich aber sicher durch die Automation bearbeiten.
Mir ist bewusst, dass mit dem automatischen Ausführen Risiken verbunden sind. Malware könnte das ausnutzen. Aber der Scan-PC hat keinen Außenkontakt. Deshalb kommen keine Fremddateien darauf. Aufgrund dieser grundsätzlichen Gefahr vermute ich, dass mit Trusted-Funktionen bei der Realisation meiner Vorstellungen gearbeitet werden muss (wenn sie überhaupt möglich sind).
Grüße an alle Interessierten
MadTax