Photoshop脚本代码一键生成所有IOS图标

Copy to path:
   
  MAC: /Applications/Adobe Photoshop CS5/Presets/Scripts
  PC: c:\program files\Adobe Photoshop CS5\Presets\Scripts




  //
  // WARNING!!! In the rare case that there are name collisions, this script will
  // overwrite (delete perminently) files in the same folder in which the selected
  // iTunesArtwork file is located. Therefore, to be safe, before running the
  // script, it's best to make sure the selected iTuensArtwork file is the only
  // file in its containing folder.
  //
  // Copyright (c) 2010 Matt Di Pasquale
  // Added tweaks Copyright (c) 2012 by Josh Jones http://www.appsbynight.com
  //
  // Permission is hereby granted, free of charge, to any person obtaining a copy
  // of this software and associated documentation files (the "Software"), to deal
  // in the Software without restriction, including without limitation the rights
  // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  // copies of the Software, and to permit persons to whom the Software is
  // furnished to do so, subject to the following conditions:
  //
  // The above copyright notice and this permission notice shall be included in
  // all copies or substantial portions of the Software.
  //
  // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  // THE SOFTWARE.
  //
  // Prerequisite:
  // First, create at least a 1024x1024 px PNG file according to:
  // http://developer.apple.com/library/ios/#documentation/iphone/conceptual/iphoneosprogrammingguide/BuildTimeConfiguration/BuildTimeConfiguration.html
  //
  // Install - Save Create Icons.jsx to:
  // Win: C:\Program Files\Adobe\Adobe Utilities\ExtendScript Toolkit CS5\SDK
  // Mac: /Applications/Utilities/Adobe Utilities/ExtendScript Toolkit CS5/SDK
  // * Restart Photoshop
  //
  // Update:
  // * Just modify & save, no need to resart Photoshop once it's installed.
  //
  // Run:
  // * With Photoshop open, select File > Scripts > Create Icons
  // * When prompted select the prepared iTunesArtwork file for your app.
  // * The different version of the icons will get saved to the same folder that
  // the iTunesArtwork file is in.
  //
  // Adobe Photoshop JavaScript Reference
  // http://www.adobe.com/devnet/photoshop/scripting.html
   
   
  // Turn debugger on. 0 is off.
  // $.level = 1;
   
  try
  {
  // Prompt user to select iTunesArtwork file. Clicking "Cancel" returns null.
  var iTunesArtwork = File.openDialog("Select a sqaure PNG file that is at least 1024x1024.", "*.png", false);
   
  if (iTunesArtwork !== null)
  {
  var doc = open(iTunesArtwork, OpenDocumentType.PNG);
   
  if (doc == null)
  {
  throw "Something is wrong with the file. Make sure it's a valid PNG file.";
  }
   
  var startState = doc.activeHistoryState; // save for undo
  var initialPrefs = app.preferences.rulerUnits; // will restore at end
  app.preferences.rulerUnits = Units.PIXELS; // use pixels
   
  if (doc.width != doc.height)
  {
  throw "Image is not square";
  }
  else if ((doc.width < 1024) && (doc.height < 1024))
  {
  throw "Image is too small! Image must be at least 1024x1024 pixels.";
  }
  else if (doc.width < 1024)
  {
  throw "Image width is too small! Image width must be at least 1024 pixels.";
  }
  else if (doc.height < 1024)
  {
  throw "Image height is too small! Image height must be at least 1024 pixels.";
  }
   
  // Folder selection dialog
  var destFolder = Folder.selectDialog( "Choose an output folder");
   
  if (destFolder == null)
  {
  // User canceled, just exit
  throw "";
  }
   
  // Save icons in PNG using Save for Web.
  var sfw = new ExportOptionsSaveForWeb();
  sfw.format = SaveDocumentType.PNG;
  sfw.PNG8 = false; // use PNG-24
  sfw.transparency = false;
  doc.info = null; // delete metadata
   
  //References:
  //http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html%23//apple_ref/doc/uid/TP40006556-CH14-SW2
   
  var icons = [
   
  //for Ad Hoc Only
  {"name": "iTunesArtwork@2x", "size":1024},
  {"name": "iTunesArtwork", "size":512},
   
  //for App Icon
  {"name": "Icon-60@3x", "size":180}, //iPhone 6 Plus (@3x)
  {"name": "Icon-60@2x", "size":120}, //iPhone 6 and iPhone 5 (@2x)
  {"name": "Icon-76@2x", "size":152}, //iPad and iPad mini (@2x)
  {"name": "Icon-76", "size":76}, //iPad 2 and iPad mini (@1x)
   
  {"name": "Icon", "size":57}, //iPhone Non-Retina (iOS 6.1 and Prior)
  {"name": "Icon@2x", "size":114}, //iPhone Retina (iOS 6.1 and Prior)
  {"name": "Icon-72", "size":72}, //iPad Non-Retina (iOS 6.1 and Prior)
  {"name": "Icon-72@2x", "size":144}, //iPad Retina (iOS 6.1 and Prior)
   
  //for Spotlight search results icon
   
  {"name": "Icon-40", "size":40}, //iPad Non-Retina
  {"name": "Icon-40@2x", "size":80}, //iPad Retina
  {"name": "Icon-40@3x", "size":120}, //iPhone 6 Plus
   
  //for Settings icon
   
  {"name": "Icon-29", "size":29}, //iPhone Non-Retina (iOS 6.1 and Prior)
  {"name": "Icon-29@2x", "size":58}, //iPhone Retina (iOS 6.1 and Prior)
  {"name": "Icon-29@3x", "size":87}, //iPhone 6 Plus
   
  {"name": "Icon-50", "size":50}, //iPad Non-Retina (iOS 6.1 and Prior)
  {"name": "Icon-50@2x", "size":100}, //iPad Retina (iOS 6.1 and Prior)
  ];
   
  var icon;
  for (i = 0; i < icons.length; i++)
  {
  icon = icons[i];
  doc.resizeImage(icon.size, icon.size, // width, height
  null, ResampleMethod.BICUBICSHARPER);
   
  var destFileName = icon.name + ".png";
   
  if ((icon.name == "iTunesArtwork@2x") || (icon.name == "iTunesArtwork"))
  {
  // iTunesArtwork files don't have an extension
  destFileName = icon.name;
  }
   
  doc.exportDocument(new File(destFolder + "/" + destFileName), ExportType.SAVEFORWEB, sfw);
  doc.activeHistoryState = startState; // undo resize
  }
   
  alert("iOS Icons created!");
  }
  }
  catch (exception)
  {
  // Show degbug message and then quit
  if ((exception != null) && (exception != ""))
  alert(exception);
  }
  finally
  {
  if (doc != null)
  doc.close(SaveOptions.DONOTSAVECHANGES);
   
  app.preferences.rulerUnits = initialPrefs; // restore prefs
  }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值