PS自动生成不同尺寸图标

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

####一、简介 通过在ps执行脚本将当前编辑的素材生成各种不同尺寸的png图标。下面例子在cs6下测试通过。

参考:http://coolketang.com/psscript/menu8lesson12.php

####二、脚本jsx

//调用[File]的[openDialog]命令,弹出文件选择窗口,提示用户选择png图标,并将文件存储在变量[bigIcon]中。
//var bigIcon = File.openDialog("请选择一张png图片:", "*.png", false);
//var strArr = bigIcon.name.split(".");
//var iconName = strArr[0];
//打开用户选择的图标文件,并将打开后的文档,赋予变量[pngDoc]。
//var pngDoc = open(bigIcon, OpenDocumentType.PNG);//ps当前文档
var pngDoc = app.activeDocument;
//保存名字为当前文档名字
var iconName = pngDoc.name.split(".")[0] + ".png";//调用[Folder]的[selectDialog]命令,弹出文件夹选择窗口,提示用户选择输出iOS图标的文件夹。
//并将文件夹存储在变量[destFolder]中。
var destFolder = Folder.selectDialog( "请选择一个输出的文件夹:");if(destFolder != null){//定义一个数组,这个数组由各种js对象组成,每个对象都有一个[name]属性和[size]属性,分别表示图标的名称的尺寸。var icons = [{"dir": "mipmap-ldpi",             "size":"36px"},{"dir": "mipmap-mdpi",             "size":"48px"},{"dir": "mipmap-hdpi",             "size":"72px"},{"dir": "mipmap-xhdpi",             "size":"96px"},{"dir": "mipmap-xxhdpi",             "size":"144px"},{"dir": "mipmap-xxxhdpi",             "size":"192px"}];//定义一个变量[option],表示iOS输出的格式为PNG。并设置输出PNG时不执行PNG8压缩,以保证图标质量。var option = new PNGSaveOptions();option.PNG8 = false;//保存当前的历史状态,以方便缩放图片后,再返回至最初状态的尺寸。var startState = pngDoc.historyStates[0];//添加一个循环语句,用来遍历所有图标对象的数组。for (var i = 0; i < icons.length; i++) {//定义一个变量[icon],表示当前遍历到的图标对象。var icon = icons[i];//调用[pngDoc]对象的[resizeImage]方法,将原图标,缩小到当前遍历到的图标对象定义的尺寸。pngDoc.resizeImage(icon.size, icon.size);//创建目录var targetFolder = new Folder(destFolder + "/" + icon.dir);targetFolder.create();//定义一个变量[file],表示图标输出的路径。var file = new File(targetFolder +  "/" + iconName);//调用[pngDoc]的[saveAs]方法,将缩小尺寸后的图标导出到指定路径。pngDoc.saveAs(file, option, true, Extension.LOWERCASE);//将[doc]对象的历史状态,恢复到尺寸缩放之前的状态,即恢复到原始尺寸,为下次缩小尺寸做准备。pngDoc.activeHistoryState = startState;}//操作完成后,关闭文档。//pngDoc.close(SaveOptions.DONOTSAVECHANGES);
}

在记事本输入上述内容,要生成不同尺寸文件则需要修改icons 数组,并将文件保存为jsx文件。

####三、执行 用ps打开要转换的素材,“文件->脚本->浏览”选择刚刚生成的jsx文件按确定,选择保存文件夹,按确定即在目标文件夹生成指定的尺寸文件。

####四、关于ExtendScript Toolkit ExtendScript Toolkit是adobe的一个编辑jsx的工具,装ps时会安装,用它可以编辑运行脚本,按F1有相关的API介绍

转载于:https://my.oschina.net/jackruan/blog/537781

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/262428.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在Word中输入带圈数字1-10的黑底白字和白底黑字的数字字符?

当需要在文档中输入带圈的数字字符时&#xff0c;你知道如何输入吗&#xff1f; 通常的输入法软键盘中会提供带圈的数字字符&#xff0c;但是都是白底黑字的。如果想输出黑底白字的带圈数字字符&#xff0c;该如何输入呢&#xff1f; 答案很简单&#xff1a; 在Word 2013中&…

Oracle存储过程 使用游标、数组的配合查询

查询输入的门牌号码是否在标准门牌库中存在。存在则返回相应的号码。 1 public string GetValidate&#xff08;&#xff09;{2 3 OracleConnection conn ConnectOra();4 string retRepMphm;5 try6 {7 conn.open();8 OracleComandType cmdconn.CreateCommand();9 cmd.Com…

Windows环境下Code::Blocks中成功配置MySQL Connector/C连接MySQL数据库

下面我将介绍当需要用C语言开发能访问MySQL数据库的程序时成功配置的关键事项。 操作系统&#xff1a;Windows 7 x64 编程环境&#xff1a;Code::Blocks 10.05(32bit) 配置方式说明&#xff1a;用C语言开发访问MySQL数据库至少有3种配置方式。 方式1&#xff1a;使用MySQL C…

离散卷积过程举例图示详解

卷积结果的通俗解释&#xff1a; f(x)是待处理的信号。通常地&#xff0c;该函数数据个数比较多。 g(x)是对信号前后相关性的描述的函数。通常地&#xff0c;该函数非零数据个数比较少。它通常具有在(-∞,∞)内可积且快速收敛的特性。 对于本例中的函数g(x)&#xff0c;卷积…

c语言数据结构将链串里所有值为x的字符删除_redis数据结构与对象到底长什么样?...

写在前面前方高能&#xff01;前方高能&#xff01;前方高能&#xff01;文章较长&#xff0c;可能需要花费您两个小时的时间&#xff0c;请做好心理准备&#xff0c;但是一旦你准备看下去&#xff0c;我相信您一定会有收获&#xff0c;不枉此行&#xff0c;let’s go!!!一、简…

java中判断字段真实长度(中文2个字符,英文1个字符)的方法

public class Char_cn { public static void main(String[] args) { // TODO Auto-generated method stub String haha "我叫兜兜abcd"; int true_num String_length(haha); System.out.println("true" true_num); int false_num haha.length();…

mysql主从技术_MySQL主从架构的实现

目录一主一从1.1 环境准备&#xff1a;1.2 准备步骤&#xff1a;1.3 实现步骤:1.3.1 配置master主服务器1.3.2 创建复制帐号1.3.3 查看主服务器状态1.3.4 配置slave从服务器1.3.5 启动从服务器复制线程1.3.6 查看从服务器状态1.3.7 测试1.4 扩展——实现一主多从1.4.1 需求分析…

C# winfrom listView

转自http://hi.baidu.com/gaoisbest/item/84034943d4d94195823ae12b 1.如何为listview手动添加第一列和第二列数据 for (int i 0; i < 10; i) { ListViewItem Item new ListViewItem(); Item.Text dt.Rows[i][1].ToString();//读取数据库中字段 Item.Tag dt.…

[教程指导]索尼官方4.0.3系统一键root方法! [复制链接]

[教程指导]索尼官方4.0.3系统一键root方法&#xff01; [复制链接] 青青子衿198976青青子衿198976注册时间2011-9-26最后登录2012-9-15在线时间730 小时阅读权限150积分3996帖子1173精华32UID13306151版主 在线时间730 小时经验1629 分贡献2693 点极币10442 极币最后登录2012-9…

python --函数

转http://www.cnblogs.com/vamei/archive/2012/06/01/2529500.html 函数最重要的目的是方便我们重复使用相同的一段程序。 将一些操作隶属于一个函数&#xff0c;以后你想实现相同的操作的时候&#xff0c;只用调用函数名就可以&#xff0c;而不需要重复敲所有的语句。 函数的定…

国外网站设计欣赏:30个优秀的国外咖啡网站设计

梦想天空博客向大家分享各种类型的优秀网站作品&#xff0c;有电子商务网站设计、旅游网站设计、餐馆网站设计、设计工作室网站设计、大学网站设计以及各种色系&#xff0c;各种风格的网站设计作品。今天这篇文章给大家带来30个优秀的国外咖啡网站设计作品&#xff0c;一起欣赏…

【译】CodeIgniter HMVC模块扩展使用文档

CodeIgniter HMVC扩展说明 原文地址&#xff1a;Modular Extensions - HMVC 模块扩展——HMVC 模块扩展让CodeIgniter框架模块化。模块是一组独立的组件&#xff08;通常有模型、控制器和视图&#xff09;&#xff0c;它们被分类在应用模块的子文件夹中&#xff0c;并且能够直接…

python函数参数类型及顺序_python函数参数类型及其顺序

根据inspect模块官文文档中关于函数参数类型的相关说明&#xff0c;python函数参数共有五种类型&#xff0c;按顺序分别为&#xff1a;POSITIONAL_ONLY、POSITIONAL_OR_KEYWORD、VAR_POSITIONAL、KEYWORD_ONLY、VAR_KEYWORD。如图&#xff1a;POSITIONAL_ONLY&#xff1a;参数值…

JS组件系列——Bootstrap Table 表格行拖拽(二:多行拖拽)

原文:JS组件系列——Bootstrap Table 表格行拖拽&#xff08;二&#xff1a;多行拖拽&#xff09;前言&#xff1a;前天刚写了篇JS组件系列——Bootstrap Table 表格行拖拽&#xff0c;今天接到新的需要&#xff0c;需要在之前表格行拖拽的基础上能够同时拖拽选中的多行。博主用…

scrapy知乎爬虫mysql存储项目_Scrapy爬虫框架第八讲【项目实战篇:知乎用户信息抓取】--本文参考静觅博主所写...

思路分析&#xff1a;(1)选定起始人(即选择关注数和粉丝数较多的人--大V)(2)获取该大V的个人信息(3)获取关注列表用户信息(4)获取粉丝列表用户信息(5)重复(2)(3)(4)步实现全知乎用户爬取实战演练&#xff1a;(1)、创建项目&#xff1a;scrapy startproject zhijutest(2)、创建爬…

kali下生成web端后门

很多时候在***测试时选择web***害怕用的别人的马带有后门&#xff0c;这样自己的辛苦就要被别人不劳而获&#xff0c;很多时候我们都想拥有自己的马&#xff0c;那么这个时候你就应该使用kail来生成一个自己独特密码的web***了。Kali Linux自带有好几个web***生成工具&#xff…

素性测试的Miller-Rabin算法完全解析 (C语言实现、Python实现)

因为文中存在公式&#xff0c;只能用图片方式上传了&#xff01; 以下为C语言源代码&#xff1a; #include <stdio.h> typedef long long unsigned LLU; typedef int BOOL; #define TRUE 1 #define FALSE 0 BOOL isPrime(LLU n) { //这是传统的方法&#xff0c;用于与…

MongoDB源码阅读之ReplSet源码分析

1. ReplSet源码结构 rs_config.h replSet间同步设置的工具类 rs_member.h 心跳检测类和replSet成员状态的定义 rs_sync.h 同步数据类 rs.h 定义了几乎所有replSet相关的类&#xff08;Member:replSet中的节点成员&#xff0c; GhostSync&#xff1a;备份同步类&#xff0c;Rep…

C# 字符串性能

Written By Dr Herbie [2] Translated By Allen Lee Introduction 你在代码中处理字符串的方法可能会对性能产生令人吃惊的影响。程序中需要考虑两个由于使用字符串而产生的问题&#xff1a;临时字符串变量的使用和字符串连接。Background1.String是引用类型&#xff0c;在堆上…

手把手教你部署VSAN见证虚拟设备 (Cormac)

译者注&#xff1a;本文翻译自Cormac的博客&#xff0c;并未严格地逐字逐句的直译&#xff0c;如有谬误&#xff0c;万望见谅。原文见此http://cormachogan.com/2015/09/14/step-by-step-deployment-of-the-vsan-witness-appliance/现在开始在之前的帖子中我曾经介绍过见证虚拟…