Gibt es ein Skript zum Exportieren von Illustrator-Bildern in mehrere Dateitypen, Farben und Größen?

Ich habe 6 verschiedene Logos die jeweils einzeln gespeichert werden können

  • Schwarz >> CMYK / RGB >> JPG / TIFF / EPS
  • Farbe >> CMYK / RGB >> JPG / TIFF / EPS
  • Weiß >> CMYK / RGB >> JPG / TIFF / EPS

Gibt es dafür ein Script oder muss ich das manuell machen?

Perfekte Zeit, um Scripting zu lernen, damit Sie es nicht manuell tun müssen. Das Speichern in verschiedenen Formaten ist ziemlich einfach und es gibt jede Menge Beispielcode dafür. Was die verschiedenen Farbversionen betrifft ... Ich würde die Schwarzweißversionen vielleicht manuell in separaten Zeichenflächen erstellen und sie dann mit einem Skript in verschiedenen Formaten speichern. Wenn Sie interessiert sind, kann ich Sie auf einige Referenzmaterialien hinweisen.

Antworten (1)

Vielleicht ist das nicht die perfekte Antwort, aber Kommentare hatten einfach nicht genug Platz dafür.

Um mit der Skripterstellung zu beginnen, ist der erste Ort, an dem Sie nachsehen möchten, wahrscheinlich die Illustrator-Referenzwebsite für Skripterstellung . Wenn Sie dort das Referenz-PDF für javascript. Sie finden eine Liste von Methoden und einige Beispielskripte.

Wenn Sie nach: " exporting to" suchen und durch die Suchergebnisse blättern, finden Sie Skriptbeispiele zum Exportieren des aktuellen Dokuments in verschiedene Formate. Die anderen beiden Suchbegriffe wären „ saving to“ und „ saving with“. Mit diesen Beispielskripten kommen Sie dem, was Sie suchen, ziemlich nahe.

Oberhalb dieser Beispielskripte finden Sie die Export- und Speichereigenschaften.

Außerdem ist dies eine gute Ressource und manchmal viel besser als die "offizielle" Referenz. Dies kann schwierig zu navigieren sein, also google ich normalerweise nur Sachen wie " jongware illustrator document" oder " jongware illustrator pdfsaveoptions". @Jongware, du bist mein Held <3


Kommen wir nun zurück zum Einrichten des Skripts

Wenn Sie eines dieser Beispielskripts aus der Referenzdatei fürjavascript erhalten und es in eine .jsx-Datei stecken und ausführen, wird nichts passieren. Sie müssen die Funktion wie folgt aufrufen:

Hier ist die saveFileToPDFFunktion, die Sie dort finden können

Ich habe gerade diese erste Zeile unten hinzugefügt. Offensichtlich müssen Sie Ihren eigenen Pfad verwenden.

saveFileToPDF("/Users/joonas/Desktop/file.pdf");

// Saves the current document as PDF to dest with specified options
// dest contains the full path and file name to save to
function saveFileToPDF(dest) {
    var doc = app.activeDocument;
    if ( app.documents.length > 0 ) {
        var saveName = new File ( dest );
        saveOpts = new PDFSaveOptions();
        saveOpts.compatibility = PDFCompatibility.ACROBAT5;
        saveOpts.generateThumbnails = true;
        saveOpts.preserveEditability = true;
        doc.saveAs( saveName, saveOpts );
    }
}

Damit speichert das Skript Ihr aktuelles Dokument als PDF-Datei mit jeder Zeichenfläche als separate Seite.

Wenn Sie sich nun die Beispielskripte für jedes Dateiformat, das Sie speichern möchten, besorgen und die Funktionen wie oben gezeigt aufrufen, haben Sie schnell ein Skript, das das aktuelle Dokument in beliebig vielen Formaten speichert.


JPG- und PNG-Formate können die Dinge etwas komplizieren, wenn Sie so etwas wie das tun möchten, was ich in meinem Kommentar erklärt habe: Erstellen Sie die verschiedenen Farboptionen manuell in verschiedenen Zeichenflächen und führen Sie dann das Skript aus. Nun, keines dieser Formate unterstützt die Eigenschaft artboardRangebeim Exportieren. Das bedeutet, dass nur eine Datei mit dem gesamten Inhalt des Dokuments gespeichert wird. Du kannst es aber umgehen:

Ich habe die „ exportFile“-Methode im Grunde in eine for-Schleife gepackt, die Dateibenennung geändert und die „ fileSpec“-Variable entfernt. Ich habe auch die artBoardClippingEigenschaft " " hinzugefügt. Mit diesen Änderungen sollte das Skript speichern und file1.jpgvorausgesetzt , Sie haben 3 Zeichenflächen.file2.jpgfile3.jpg

exportFileToJPEG("/Users/joonas/Desktop/file");

// Exports current document to dest as a JPEG file with specified
// options, dest contains the full path including the file name
function exportFileToJPEG (dest) {
    if ( app.documents.length > 0 ) {
        var exportOptions = new ExportOptionsJPEG();
        var type = ExportType.JPEG;
        // var fileSpec = new File(dest);
        exportOptions.artBoardClipping = true; // If true, the exported image should be clipped to the artboard.
        exportOptions.antiAliasing = true;
        exportOptions.qualitySetting = 100;

        // Gets the length (amount) of artboards in the current document.
        var artboard_length = app.activeDocument.artboards.length;
        // Loop that runs the code as many times as there are artboards...
        for (var i = 0; i < artboard_length; i++ ) {
            // Set the active artboard based on the loop number
            app.activeDocument.artboards.setActiveArtboardIndex(i);
            // Exports the current artboard as a jpeg file
            app.activeDocument.exportFile( new File( dest + (i+1) + ".jpg" ), type, exportOptions );
        }

    }
}

Nehmen wir nun an, Sie wollten den aktuellen Dokumentnamen als Basis für die Dateinamen verwenden, Sie könnten eine Variable wie diese oben im Dokument verwenden:

var docName = app.activeDocument.name.split('.')[0];

... und dann könntest du es so verwenden:

exportFileToJPEG("/Users/joonas/Desktop/" + docName );
Wenn etwas unklar bleibt, habe ich nichts dagegen, es näher zu erläutern, aber googeln Sie unbedingt die einfachen Dinge. --- Ich habe kürzlich Videos erstellt, die 2 Möglichkeiten zeigen, wie Sie einen Hotkey zum Starten eines Skripts in Illustrator auf dem Mac festlegen können (da es nicht wirklich nativ unterstützt wird). Sie können die Links aus diesem Kommentar finden: