2015-01-21 5 views
3

Я хочу экспортировать значок приложения iOS разных размеров, но без необходимости делать это для каждого размера! Есть ли способ с Adobe Illustrator, где вы можете экспортировать различные PNG с разными размерами за один раз?Экспорт нескольких изображений в Illustrator

ответ

6

Я сам нашел ответ!

http://www.adobe.com/devnet/illustrator/scripting.html

Как подробно описано в приведенной выше ссылке; Скрипт представляет собой серию команд, которые показывают, что Illustrator выполняет одну или несколько задач.

Таким образом, используя следующий скрипт, я смог экспортировать несколько изображений разных размеров, как я хотел.

#target Illustrator 

/** 
* export multiple PNG's in different sizes 
* @author Alexandros Harvey 
*/ 
// Adapted to export an Illustrator file in various sizes by Alexandros Harvey 
// based on how to export images as CSS Layers by CarlosCanto 


if (app.documents.length > 0) { 
    main(); 
} 
else alert('Cancelled by user'); 

function main() { 
    var document = app.activeDocument; 
    var afile = document.fullName; 
    var filename = afile.name.split('.')[0]; 

    var folder = afile.parent.selectDlg("Export as CSS Layers (images only)..."); 

    if(folder != null) 
    { 
     var activeABidx = document.artboards.getActiveArtboardIndex(); 
     var activeAB = document.artboards[activeABidx]; // get active AB   
     var abBounds = activeAB.artboardRect;// left, top, right, bottom 

     var docBounds = document.visibleBounds; 
     activeAB.artboardRect = docBounds; 

     var options = new ExportOptionsPNG24(); 
     options.antiAliasing = true; 
     options.transparency = true; 
     options.artBoardClipping = true; 

     var icons = [ 
      {"name": "[email protected]", "size":1024}, 
      {"name": "Icon-512",  "size":512}, 
      {"name": "[email protected]", "size":180}, 
      {"name": "[email protected]", "size":152}, 
      {"name": "[email protected]", "size":144}, 
      {"name": "[email protected]", "size":120}, 
      {"name": "[email protected]", "size":114}, 
      {"name": "[email protected]", "size":100}, 
      {"name": "[email protected]", "size":80}, 
      {"name": "Icon-76",   "size":76}, 
      {"name": "Icon-72",   "size":72}, 
      {"name": "Icon-60",   "size":60}, 
      {"name": "[email protected]", "size":58}, 
      {"name": "Icon-57",   "size":57}, 
      {"name": "Icon-50",   "size":50}, 
      {"name": "Icon-40",   "size":40}, 
      {"name": "Icon-29",   "size":29} 
     ]; 

     var icon, file; 
     for(var i = 0; i < icons.length; i++) 
     { 
      icon = icons[i]; 

      file = new File(folder.fsName + '/' + icon.name + ".png"); 

      // My App Icon is originally 1024x1024 so that's why I divide height and width by 1024 
      options.horizontalScale = 100 * (icon.size/document.width); 
      options.verticalScale = 100 * (icon.size/document.height); 

      document.exportFile(file,ExportType.PNG24,options); 
     } 

     activeAB.artboardRect = abBounds; 
    } 
} 

Я надеюсь, что это поможет всем, кому что-то нужно.

UPDATE:

Что касается различных размеров; Измените массив значков, чтобы использовать высоту и ширину вместо размера, например.

var icons = [{"name": "[email protected]", "height":250, "width":125}, ...] 

Затем измените horizontalScale, чтобы использовать ширину и verticalScale для использования высоты. Я также изменил его, поэтому он использует высоту и ширину документа, а не жестко закодированное число.

options.horizontalScale = 100 * (icon.width/document.width); 
options.verticalScale = 100 * (icon.height/document.height); 

ЗАПУСК СЦЕНАРИЙ: По volleybologist

  1. Скопируйте приведенный выше код в редакторе (например, Notepad++)
  2. Сохранить как файла JavaScript (.js)
  3. Open Illustrator (проверяется с помощью Illustator CC 19.1.0, и он работает)
  4. В Illustrator перейдите в меню Файл> Scrip ts> Другой скрипт и откройте только что сохраненный .js файл
  5. Появится диалоговое окно, найдите и выберите файл .js
  6. Появится еще одно диалоговое окно, в котором будет предложено выбрать местоположение для экспортируемых pngs
  7. Сценарий запускается и изображения должны находиться в выбранной папке
Смежные вопросы