[GastForen Programme Web/Internet PDF Grundlagen / Web / eForms Seitengröße und Stand automatisiert verändern

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Web/Internet - Webdesign, eForms
Themen
Beiträge
Moderatoren
Letzter Beitrag

Seitengröße und Stand automatisiert verändern

Martin Fischer
Beiträge gesamt: 12783

28. Jan 2012, 10:18
Beitrag # 1 von 3
Bewertung:
(3966 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

ich muss immer wieder die Seitengröße von PDF-Dateien mit einem bestimmten Seitenformat (DIN-A5) auf ein anderes, gleichbleibendes Maß verändern.
Darüberhinaus muss der Satzspiegel (die bedruckte Fläche) neu justiert werden.
Dabei ist der x-Versatz auf geraden und ungeraden Seiten unterschiedlich.

Von Hand löse ich das etwa so, wie aus dem Bildschirmfoto ersichtlich.

Nun muss ich das je PDF-Datei für gerade und ungerade Seiten zweimal ausführen und dabei passieren immer wieder mal Fehler, die eine Wiederholung erzwingen.

Die Aufgabe ruft nach einer Automatisierung.

Stapelverarbeitung
Im Blog von Sacha Heck habe ich zwar eine Anleitung zur Beschneidung von Seiten mit der Stapelverarbeitung in Acrobat gefunden.


Allerdings ist es mir damit nicht möglich, die Anwendung auf nur die geraden oder nur die ungeraden Seiten zu beschränken (siehe Bildschirmfoto).

Bei meinen ersten Versuchen war es mir auch nicht möglich, Versatzwerte einzugeben. Die Kästchen waren ausgegraut. Jetzt, wo ich es für das Bildschirmfoto entsprechend einrichten wollte, hat's plötzlich funktioniert.
Vielleicht gibt es doch noch eine Möglichkeit, bei der Stapelverarbeitung gerade und ungerade Seiten getrennt anzusprechen.


Skripten
Mit dem Skripten von Acrobat (JavaScript/AppleScript) habe ich noch keine Erfahrung. Immerhin habe ich im Beitrag » PDF-Beschnitt automatisieren« einen Hinweis auf das vielversprechende Skript SplitPages.js von Karl Heinz Kremer gefunden.

Das ist mir schon mal eine gute Hilfe beim Verständnis, wie in Acrobat per Skript vorzugehen ist.

Nun brüte ich schon einige Zeit über der JavaScript-Referenz von Acrobat und finde nicht die entsprechenden Klassen / Methoden
a) zur Definition einer benutzerdefinierten Seitengröße und
b) zum horizontalen und vertikalen Versatz.

Wie sind diese Klassen/Methoden in JS oder AS benannt oder wie kann diese Änderung der Seitengröße mit vertikalem und horizontalem Versatz vorgenommen werden?

(Dieser Beitrag wurde von Martin Fischer am 28. Jan 2012, 10:19 geändert)
X

Seitengröße und Stand automatisiert verändern

Martin Fischer
Beiträge gesamt: 12783

28. Jan 2012, 13:10
Beitrag # 2 von 3
Beitrag ID: #488727
Bewertung:
(3935 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Inzwischen habe ich die Lösung selbst gefunden.

Es gilt, die media box und die crop box der Seiten zur Passung zu bringen.

Zunächst wird die media box auf die neue Größe und den Versatz angepasst.
Im zweiten Schritt ist die cropbox box mit der media box gleichzusetzen.

In AppleScript sieht das so aus:
Code
-- Konfiguration: Seitenmaße in mm 
set p_width to mm2pt(155) -- neue Seitenbreite
set p_height to mm2pt(232) -- neue Seitenhöhe

-- Konfiguration: Versatz
set xoff_left to mm2pt(8) -- x-Versatz auf geraden Seiten
set xoff_right to mm2pt(-1.2) -- x-Versatz auf ungeraden Seiten
set yoff to mm2pt(17.95) -- y-Versatz
---------------------------------------------------------

tell application "Adobe Acrobat Pro"
tell first document
repeat with n from 1 to count of pages
tell page n
if (n mod 2) is 1 then
set xoff to xoff_left
else
set xoff to xoff_right
end if
set media box to {-xoff, -yoff, p_width - xoff, p_height - yoff}
set crop box to media box
end tell
end repeat
end tell
end tell

on mm2pt(mm)
return mm * 2.8353
end mm2pt



Bei Bedarf könnte ich den obigen AS-Code eventuell in JavaScript umsetzen.


als Antwort auf: [#488723]
(Dieser Beitrag wurde von Martin Fischer am 28. Jan 2012, 13:25 geändert)

Seitengröße und Stand automatisiert verändern

kkauer
Beiträge gesamt: 661

29. Jan 2012, 11:25
Beitrag # 3 von 3
Beitrag ID: #488737
Bewertung:
(3874 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ Martin Fischer ] Bei Bedarf könnte ich den obigen AS-Code eventuell in JavaScript umsetzen.

Der Vollständigkeit halber: Die Aufgabe sollte sich auch ohne Skript lösen lassen: Ein Preflight-Profil mit den zwei Korrekturen (gerade/ungerade) erstellen.


als Antwort auf: [#488727]