Photoshop-Cafe.de :: Dein Photoshop-Forum

Photoshop-Cafe.de :: Dein Photoshop-Forum (https://www.photoshop-cafe.de/forum/index.php)
-   Hilfestellung, Tipps und Tricks (https://www.photoshop-cafe.de/forum/forumdisplay.php?f=30)
-   -   Photoshop Import aus PDF-Seiten in Ebenen (https://www.photoshop-cafe.de/forum/showthread.php?t=19630)

gelöschter User 13.03.14 10:15

Photoshop kann eine PDF -Datei nicht in mehrere Ebenen splittern,
das kann man nur manuell machen.
Also mit „Dateien in Stapel laden“ funktioniert das nicht, man kann damit sogar PDF gar nicht öffnen.

Wie schon virra erwähnt hat :
"Wozu braucht man das? Das ist so dermaßen jenseits von dem, was ich so mache, dass ich mir echt nix vorstellen könnte, wo das benötigt würde …?"
Das ist Narren Arbeit.

Man kann aus PDF auch 600 Seiten in PS importieren, aber wie lange das alles dauert.?
Man kann danach Photoshop nicht einfach beenden, denn PS für jedes Bild Abfrage stellt, ob Bild abgespeichert werden soll.
Hilft nur Windows Task -Manager.

heikehk 13.03.14 11:47

Zeus sag mal liest du eigentlich was hier geschrieben wird. Das Thema mit den Fragen ist shcon lange geklärt. Da Du es nicht machst entferne ich zu Deinem eigenen Wohl Deine Screenshots.

heikehk 13.03.14 16:31

Hallo Roland,
ich freue mich Dir schreiben zu können, dass ich es hinbekommen habe. Allerdings mit einer Einschränkung. Man muss leider ein paar Dinge von Hand eintragen.

Die Seitenzahl konnte ich nicht auslesen, weshalb ich einen Counter eingeführt habe, der, wenn die Seitenzahl höher ist, erhöht werden muss. Sollten es weniger Seiten sein, bricht die Verarbeitung nach der letzten Seite ab. Zusätzlich müssen Dinge, die Du brauchst wie DokumentenMode (CMYK oder RGB) und auch die Auflösung per Hand eingetragen werden (Momentan stehen die Variablen hier auf CMYK und 300dpi).

Die Ebenen werden momentan von unten nach oben eingefügt (Also erste Seite unten und die restlichen Seite für Seite oben). Transparenz wird erhalten. Wenn Du das Script startest, dann öffnet sich ein Dateiauswahldialog und Du wählst eine PDF-Datei aus (Endung muss PDF sein). Dann wird diese geöffnet und Seite für Seite geöffnet, kopiert, geschlossen, eingefügt. Die Ebenen haben immer den Namen des Doumentes mit der Seitennummer.

Am Ende kommt eine Info, die man mit OK bestätigen muss, dass der Durchlauf beendet ist.
Am Besten erst mal mit einer kleineren Datei testen. Speichern musst Du am Schluss selbst.

Hoffe es hilft Dir.

100% elegant ist es nicht, aber das leider die Dokumentation der Befehle eher spärlich ist und ich froh war mit meinem angedachten Ablauf das Ganze durchführen zu können, bin ich für meinen Teil erstmal zufrieden.

Vielleicht spiele ich noch mehr und komme auf eine Eleganter Lösung für die aufgabe mit Dialog etc. Aber das dauert länger ;) Wie schnell das Ganze mit richtig großen Dateien ist und wie viele Ebenen Photoshop verträgt, kann ich nicht genau sagen. Da aber die PDF immer nur für die jeweilige Seite geöffnet wird, diese kopiert und dann die Seite wieder geschlossen, sollte das hoffentlich passen.

Wenn Du das Script in das Verzeichnis Presets / Scripts von Photoshop kopierst sollte es unter dem Menu Skripten in Photoshop nach einem Neustart verfügbar sein.

Alles Liebe
Heike

Code:

// Script zum öffnen von einer mehrseitigen PDF-Datei.
// Einzelne Seiten öffnen und dann immer wieder als Ebene speichern
// Heike Herzog-Kuhnke 03/2014

// Vorbereitungen:

// enable double clicking from the Macintosh Finder or the Windows Explorer

#target photoshop

// in case we double clicked the file
app.bringToFront();

// keine Dialogboxen anzeigen, wenn etwas passiert, für das Photoshop fragen stellen will
displayDialogs = DialogModes.NO;

// Hilfsvariablen - müssen evtl. angepasst werden

var myMaxPages = 1000;
var myCounter = 1;
var myResolution = 300;
var myColor = OpenDocumentMode.CMYK;



//Hintergrund auf weiß stellen falls nötig
app.backgroundColor.rgb.red = 255;
app.backgroundColor.rgb.green = 255;
app.backgroundColor.rgb.blue = 255;


// PDF-Datei auswählen. Wenn keine Endung PDF dann Abbruch
var _pdfDatei = File.openDialog ("Eine PDF Datei für die Verarbeitung auswählen");

/* Check ob eine PDF Datei gewählt wurde oder ob der Dialog ohne Wahl abgebrochen wurde mit Hilfsfeld */
var myDatei = "" + _pdfDatei;
var myEndung = myDatei.substr(myDatei.length-4,4);

if (myEndung!==".pdf")
  {alert("Keine PDF gewählt!\nAbbruch des Skriptes!", "Fehler oder Abbruch");
    }

// Jetzt fängt die Verarbeitung an. Definition der Vorgaben für das Öffnen der PDF
else {
// PDF Options eintragen
    var pdfOpenOptions = new PDFOpenOptions;
    pdfOpenOptions.antiAlias = true;
    pdfOpenOptions.mode = myColor;
    pdfOpenOptions.bitsPerChannel = BitsPerChannelType.EIGHT;
    pdfOpenOptions.resolution = myResolution;
    pdfOpenOptions.supressWarnings = true;
    pdfOpenOptions.cropPage = CropToType.TRIMBOX;
    pdfOpenOptions.page = myCounter;

    open(_pdfDatei, pdfOpenOptions);
    var mySavedDocument = app.activeDocument;
    var myDocument1 = app.activeDocument;
    var myLayerName = app.activeDocument.name;
    myDocument1.activeLayer.name= myLayerName;

    for (myCounter = 2; myCounter < myMaxPages; myCounter ++) {
    try {
        // PDF options - Seitenzahl hochzählen

        pdfOpenOptions.page = myCounter;
        open(_pdfDatei, pdfOpenOptions);
        myLayerName = app.activeDocument.name;

      // Namen der Datei merken zum Benennen der Ebene
      // Seitenzahl bei PDF schon im Namen
        app.activeDocument.activeLayer.name= myLayerName;
        app.activeDocument.selection.selectAll();
        app.activeDocument.selection.copy(true);
      // Schließen der Datei nach Kopie
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);

      // Wechsel in erstes Dokument und Paste / Ebene benennen
        app.activeDocument = myDocument1;
        myDocument1.paste ();
        myDocument1.activeLayer.name = myLayerName;

      }
// Wenn ein Fehler auftritt (Seite nicht vorhanden) Stoppen und Meldung
    catch (e) {
        alert("Beendet");
        myCounter = myMaxPages;
        }
    }
 }

Script zum Download und auch die korrigierte ZIP findet Ihr hier:
Script zum Öffnen eines mehrseitigen PDF in Photoshop als Ebenen

Ein paar Links zum Thema sind dort auch zu finden.

virra 13.03.14 18:29

http://www.cosgan.de/images/midi/konfus/a025.gif
Was machst du nochmal beruflich? Solche Scriptedingse sind mir unheimlich …!! Und du kannst das? :clap:

stefu 13.03.14 18:37

Super Heike!
Das sieht prinzipiell nachvollziehbar aus. Vielleicht sollte ich mich auch mal mit Java Script auseinandersetzen (Java war bisher nicht so meins).

Eine Zeile ist gedoppelt: "myLayerName = app.activeDocument.name;"
Braucht meiner Meinung nach nicht.

Grüßle
Stephan

heikehk 13.03.14 19:42

Oh noch eins vom testen durch die Lappen gegangen. Gott sei dank nix wichtiges ;)
Virra ich bin gelernte EDV-Kauffrau und hab mal vor urewigen zeiten programmieren gelernt. Damals Basic, COBOL und andere mittlerweile unbekannte Sprachen.
Das Zeug mit dem JavaScript finde ich immer noch unhandlich aber so langsam weiß ich zumindest wie ich suchen muss, aber es ist mühselig. Hab noch ein indesign Skript gemacht, das gibt's auch hier im Forum.. Wenn die Aufgabe spannend ist, dann setz ich mich gerne mal hin ;)

Alles liebe
Heike

stefu 13.03.14 19:50

Basic - toll. Cobol (MOVE b TO a ist nicht wirklich praktisch :)) naja.
Ich arbeitete auch noch mit Pascal in der Jugend. (mochte ich sehr)
Und später für Freunde und Kollegen sehr gerne mit Visual Basic, was wirklich einfach und - entgegen dem Ruf - sehr gut ist dank .NET.

Leider stoppte ich bei dem ganzen objektbasierten Kram.
Mit .NET kam ich dann wieder etwas rein.
Doch JAVA war bei mir nie auf dem Schirm.

Ich zeichne mich dadurch aus, dass ich programmiertechnisch immer auf das falsche Pferd setzte... :)

rStevensDE 13.03.14 20:57

Heike, du bist die beste, großes Lob.

Ich setze mich am Wochenende dran. Bin immer noch Krank. PS und Script ist für mich Neuland welches ich mit Spannung betrete.

Lg Roland

heikehk 13.03.14 21:28

Muss das Script ja nur einbinden und mit einer PDF ausprobieren :)
Viel Spaß damit.

rStevensDE 14.03.14 19:34

Hallo Heike,

Läuft super!

Bin wieder fiter und habe mich direkt an die Arbeit gemacht.
Script angewendet Sachen ausgeblendet und ergänzt. Über Ebenenkopositionen in .tif umgewandelt. Und die .tif's in InDesign mit der neuen Maske hineingeklickt.

Zeitaufwand bei ca. 60 Seiten etwa ne Stunde inklusive ne Tasse Kaffee!

*geilo*

Gruß roland


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:35 Uhr.

Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
©2005-2020 photoshop-cafe.de

Seite wurde generiert in 0,03754 Sekunden mit 9 Queries