¿Existe una secuencia de comandos para exportar la imagen de Illustrator como varios tipos de archivos, colores y tamaños?

Tengo 6 logotipos diferentes para que cada uno se guarde individualmente como

  • Negro >> CMYK / RGB >> JPG / TIFF / EPS
  • Color >> CMYK / RGB >> JPG / TIFF / EPS
  • Blanco >> CMYK / RGB >> JPG / TIFF / EPS

¿Hay un script que pueda hacer esto o tengo que hacerlo manualmente?

Momento perfecto para aprender secuencias de comandos, para que no tenga que hacerlo manualmente. Guardar en diferentes formatos es bastante sencillo y hay un montón de código de muestra para esto. En cuanto a las diferentes versiones en color... tal vez haría las versiones en blanco y negro manualmente en mesas de trabajo separadas y luego usaría un script para guardarlas en diferentes formatos. Si está interesado, puedo indicarle algún material de referencia.

Respuestas (1)

Tal vez esta no sea la respuesta perfecta, pero los comentarios simplemente no tenían suficiente espacio para esto.

Para comenzar con las secuencias de comandos, el primer lugar que desea buscar es probablemente el sitio de referencia de secuencias de comandos de Illustrator . Allí, si abre el pdf de referencia para javascript. Encontrará una lista de métodos y algunos scripts de muestra.

Si busca: " exporting to" y recorre los resultados de la búsqueda, encontrará ejemplos de secuencias de comandos para exportar el documento actual a diferentes formatos. Los otros dos términos de búsqueda serían " saving to" y " saving with". Estos scripts de muestra lo acercarán bastante a lo que está buscando.

Puede encontrar las propiedades de exportar y guardar encima de estos scripts de ejemplo.

Además, este es un buen recurso y, a veces, mucho mejor que la referencia "oficial". Esto puede ser difícil de navegar, así que lo que suelo hacer es simplemente buscar en Google cosas como " jongware illustrator document" o " jongware illustrator pdfsaveoptions". @Jongware, eres mi héroe <3


Ahora, volviendo a configurar el script

Si obtiene uno de esos scripts de ejemplo del archivo de referenciajavascript y lo coloca en un archivo .jsx y lo ejecuta, no pasará nada. Necesitas llamar a la función así:

Aquí está la saveFileToPDFfunción, que puedes encontrar allí.

Acabo de agregar esta primera línea a continuación. Obviamente necesitas usar tu propio camino.

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 );
    }
}

Con esto, el script guardará su documento actual como un archivo pdf con cada mesa de trabajo como una página separada.

Ahora, si obtiene las secuencias de comandos de ejemplo para cada formato de archivo que desea guardar y llama a las funciones como se muestra arriba, rápidamente tendrá una secuencia de comandos que guarda el documento actual en la cantidad de formatos que desee.


Los formatos JPG y PNG pueden complicar un poco las cosas, si desea hacer algo como lo que expliqué en mi comentario: cree manualmente las diferentes opciones de color en diferentes mesas de trabajo y luego ejecute el script. Bueno, ninguno de estos formatos admite la propiedad artboardRangeal exportar. Lo que significa que solo guarda un archivo con todo el contenido del documento. Sin embargo, puedes evitarlo:

Básicamente, envolví el exportFilemétodo " " en un bucle for, modifiqué el nombre del archivo y eliminé la fileSpecvariable " ". También agregué artBoardClippingla propiedad " ". Con estas modificaciones, el script debería guardarse file1.jpgy suponiendo que tiene 3 mesas de trabajo file2.jpg.file3.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 );
        }

    }
}

Ahora supongamos que desea usar el nombre del documento actual como base para los nombres de los archivos, podría usar una variable como esta en la parte superior del documento:

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

... y luego podrías usarlo así:

exportFileToJPEG("/Users/joonas/Desktop/" + docName );
Si algo no está claro, no me importa elaborar, pero asegúrese de buscar en Google las cosas fáciles. --- Recientemente hice videos que muestran 2 formas en que puede configurar una tecla de acceso rápido para iniciar un script en Illustrator en Mac (ya que en realidad no lo admite de forma nativa). Puedes encontrar los enlaces de este comentario: