【记录】Adobe AI CC 图片批量描摹脚本
2017-09-23 00:25
148 查看
Adobe AI CC 图片批量描摹(批量转换为SVG)脚本
三种描摹预设:
三种描摹预设:
批量描摹脚本 /* By Blackkitty 20170923 将图像分别描摹为预设的黑白,灰度,16色三种svg并保存 黑白:black 灰度:gray 16色:color */ // Main Code [Execution of script begins here] // Collectable files var COLLECTABLE_EXTENSIONS = ["bmp", "gif", "giff", "jpeg", "jpg", "pct", "pic", "psd", "png", "tif", "tiff"]; var destFolder, sourceFolder; // Select the source folder sourceFolder = Folder.selectDialog('Select the SOURCE folder...', '~'); //sourceFolder = new Folder("C:/Users/<Username>/Desktop/1"); if (sourceFolder != null) { // Select the destination folder destFolder = Folder.selectDialog('Select the DESTINATION folder...', '~'); //destFolder = new Folder("C:/Users/<Username>/Desktop/2"); } if (sourceFolder != null && destFolder != null) { //getting the list of the files from the input folder var fileList = sourceFolder.getFiles(); var errorList; var tracingPresets = app.tracingPresetsList; var TraceList = [ { TracePreset: "ImgDraw_黑白", SaveName: "black" }, { TracePreset: "ImgDraw_灰度", SaveName: "gray" }, { TracePreset: "ImgDraw", SaveName: "color" } ]; // 新建一个文档 var doc = app.documents.add(); for (var i = 0; i < fileList.length; ++i) { if (fileList[i] instanceof File) { try { var fileExt = String(fileList[i]).split(".").pop(); if (isTraceable(fileExt) != true) continue; var destFileName = fileList[i].name.substring(0, fileList[i].name.length - fileExt.length - 1) + "_"; var options = getExpertOption(); // 将图片导入 var p = doc.placedItems.add(); p.file = new File(fileList[i]); // 新建一个与图片相同大小的临时文档用于保存 var tmpdoc = app.documents.add(DocumentColorSpace.RGB, p.width, p.height); var p2 = tmpdoc.placedItems.add(); p2.file = new File(fileList[i]); // 描摹 var t = p2.trace(); for (var j = 0; j < TraceList.length; j++) { t.tracing.tracingOptions.loadFromPreset(TraceList[j].TracePreset); app.redraw(); var outfile = new File(destFolder + "/" + destFileName + TraceList[j].SaveName); tmpdoc.exportFile(outfile, ExportType.SVG, options); } p.remove(); // 关闭临时文档 tmpdoc.close(SaveOptions.DONOTSAVECHANGES); } catch (err) { errorStr = ("Error while tracing " + fileList[i].name + ".\n" + (err.number & 0xFFFF) + ", " + err.description); // alert(errorStr); errorList += fileList[i].name + " "; } } } fileList = null; alert("Batch process complete."); } else { alert("Batch process aborted."); } sourceFolder = null; destFolder = null; function isTraceable(ext) { var result = false; for (var i = 0; i < COLLECTABLE_EXTENSIONS.length; ++i) { if (ext == COLLECTABLE_EXTENSIONS[i]) { result = true; break; } } return result; } /** Returns the options to be used for the generated files. @return ExportOptionsSVG object */ function getExpertOption() { // Create the required options object var options = new ExportOptionsSVG(); // 精度2位 options.coordinatePrecision = 2; // 使用UTF8编码 options.documentEncoding = SVGDocumentEncoding.UTF8; //导出字体为SVG字体 options.fontType = SVGFontType.SVGFONT; return options; }
相关文章推荐
- 线上图片批量更换脚本记录
- php实现批量压缩图片文件大小的脚本
- shell脚本(一)批量修改图片名称
- 批量将导入的图片生成对应的元件调整为无损位图质量,设置链接项导出,发布并生成配置文件,fljs小命令脚本 - [jsfl]
- SQL存储过程将符合条件的大量记录批量删除脚本
- [记录]Shell并发模式批量安装saltstack的脚本
- Photoshop 脚本 - 批量更改图片尺寸
- 一个用于批量下载网络图片的Shell脚本
- ppm格式图片 批量转 bmp格式图片 的 shell 脚本
- 批量修改图片名字的脚本
- 【Python】批量直接修改图片存储大小脚本
- 使用脚本的方式来批量统计hbase表的记录数和字节数
- 批量更改图片尺寸大小的photoshop脚本
- 写了一个批量下载页面以及页面引用图片的脚本
- 图片批量压缩大小脚本分享
- linux下采用shell脚本实现批量为指定文件夹下图片添加水印的方法
- 批量下载图片,简易脚本
- Windows Server 批量创建DNS区域及记录(使用bat脚本)
- Python脚本--批量更改本地md文件的图片链接
- ImageMagick和脚本批量压缩图片