Tengo 6 logotipos diferentes para que cada uno se guarde individualmente como
¿Hay un script que pueda hacer esto o tengo que hacerlo manualmente?
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 saveFileToPDF
funció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 artboardRange
al exportar. Lo que significa que solo guarda un archivo con todo el contenido del documento. Sin embargo, puedes evitarlo:
Básicamente, envolví el exportFile
método " " en un bucle for, modifiqué el nombre del archivo y eliminé la fileSpec
variable " ". También agregué artBoardClipping
la propiedad " ". Con estas modificaciones, el script debería guardarse file1.jpg
y 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 );
Joonas