illustrator是矢量编辑软件,画板是绘制处理的重要容器,开发一个全部页加矩形、垂直两分和水平两分的功能,源代码如下所示:
//全部页加矩形 function allArtboard() { bt=new BridgeTalk(); bt.target="illustrator-21.064"; bt.body="{\n" + "var docRef = app.activeDocument;\n" + "var artboardRef= docRef.artboards;\n" + "for(i=0;i<artboardRef.length;i++){\n" + "var top=artboardRef[i].artboardRect[1] ;\n" + "var left=artboardRef[i].artboardRect[0];\n" + "var width=artboardRef[i].artboardRect[2]-artboardRef[i].artboardRect[0];\n" + "var height=artboardRef[i].artboardRect[1]-artboardRef[i].artboardRect[3];\n" + "var rect = docRef.pathItems.rectangle (top, left, width, height);\n" + "var noColor = new NoColor();\n"+ "rect.fillColor=noColor;\n"+ "var rectColor = new CMYKColor();\n" + "rectColor.cyan = 0;\n" + "rectColor.magenta = 100;\n" + "rectColor.yellow = 0;\n" + "rectColor.black = 0;\n" + "rect.strokeColor = rectColor;\n" + "}\n" + "docRef.selection=null;\n" + "rect.selected=true;\n"+ "}\n"; bt.send(); } //垂直两分 var docRef = app.activeDocument; var artboardRef = docRef.artboards; var isVer = parseFloat(app.version); var artboardnumber = artboardRef.getActiveArtboardIndex(); function art_Rect() { return artboardRef[artboardnumber].artboardRect; } var art_left = art_Rect(); var art_right = art_Rect(); art_left[2] += art_left[0]; art_left[2] /= 2; artboardRef[artboardnumber].artboardRect = art_left; art_right[0] += art_right[2]; art_right[0] /= 2; isVer >= 15 ? artboardRef.insert(art_right, artboardnumber + 1) : myInsert(art_right, artboardnumber); function myInsert(rect, myIndex) { var temp_Arr = []; var art_Length = artboardRef.length; for (var i = 0; i < art_Length; i += 1) { temp_Arr.push(artboardRef[i].artboardRect); } temp_Arr.splice(myIndex + 1, 0, rect); artboardRef.add(rect); var new_Art_Length = artboardRef.length; for (var i = 0; i < new_Art_Length; i += 1) { temp_Arr.push(artboardRef[i].artboardRect = temp_Arr[i]); } docRef.artboards.setActiveArtboardIndex(myIndex + 1); } //水平两分 var docRef = app.activeDocument; var artboardRef = docRef.artboards; var isVer = parseFloat(app.version); var artboardnumber = artboardRef.getActiveArtboardIndex(); function art_Rect() { return artboardRef[artboardnumber].artboardRect; } var art_top = art_Rect(); var art_bottom = art_Rect(); art_top[3] += art_top[1]; art_top[3] /= 2; artboardRef[artboardnumber].artboardRect = art_top; art_bottom[1] += art_bottom[3]; art_bottom[1] /= 2; isVer >= 15 ? artboardRef.insert(art_bottom, artboardnumber + 1) : myInsert(art_bottom, artboardnumber); function myInsert(rect, myIndex) { var temp_Arr = []; var art_Length = artboardRef.length; for (var i = 0; i < art_Length; i += 1) { temp_Arr.push(artboardRef[i].artboardRect); } temp_Arr.splice(myIndex + 1, 0, rect); artboardRef.add(rect); var new_Art_Length = artboardRef.length; for (var i = 0; i < new_Art_Length; i += 1) { temp_Arr.push(artboardRef[i].artboardRect = temp_Arr[i]); } docRef.artboards.setActiveArtboardIndex(myIndex + 1); }合理的脚本代码可以有效的提高工作效率,减少重复劳动。
欢迎光临知了软件开发网络平台,本公司定制开发各类软件,主要方向为桌面专业软件开发和插件定制开发,桌面软件主要包括文字图形识别类软件,信息管理类软件,3D打印类软件,视频类软件以及其它涉及专业的各类图形图像处理软件。插件包含AE插件,AI插件,PS插件,PDF插件,3DMAX插件以及Word,Excel等Office插件开发。详情请咨询,微信QQ:312117271,手机:18928899728,邮箱: anjingzhi_sea@163.com. 公司网址:http://www.zhiliaos.com