如下图所示:3.作者答疑代码长度过长,如需全部项目或有疑问,请留言。提示:作者知了-联系方式1提示:作者知了-联系方式2,

illustrator是矢量编辑软件,画板是绘制处理的重要容器,开发一个页面适配对象功能,源代码如下所示:
var doc = app.activeDocument;var obj = doc.selection;var bnd = new Array();if (documents.length > 0) {if (obj.length > 0) {bnd = getBounds(obj);W = bnd[2] - bnd[0];H = bnd[1] - bnd[3];X = bnd[0];Y = bnd[1];} else {doc.rulerOrigin = Array(0, 0);bnd[0] = 0;bnd[2] = doc.width;bnd[1] = doc.height;bnd[3] = 0;}doc.cropBox = bnd;doc.cropStyle = CropOptions.Standard;}function getBounds(obj) {var selObj1 = new Array();var selObj2 = new Array();var vgb1 = new Array();var vgb2 = new Array();var n = obj.length;if (n > 0) {if (obj[0].typename == "GroupItem" && obj[0].clipped && obj[0].pageItems.length > 1) {clipObj = obj[0].pathItems[0].geometricBounds;vgb1 = clipObj;} else {selObj1 = obj[0];vgb1 = selObj1.visibleBounds;}if (n > 1) {for (var i = 1; i < n; i= 1) {selObj2 = obj[i];if (obj[i].typename == "GroupItem" && obj[i].clipped && obj[i].pageItems.length > 1) {vgb2 = obj[i].pathItems[0].geometricBounds;} else {vgb2 = selObj2.visibleBounds;}if (vgb1[0] > vgb2[0]) {vgb1[0] = vgb2[0]}if (vgb1[1] < vgb2[1]) {vgb1[1] = vgb2[1]}if (vgb1[2] < vgb2[2]) {vgb1[2] = vgb2[2]}if (vgb1[3] > vgb2[3]) {vgb1[3] = vgb2[3]}}}}return vgb1;}
使用记事本或者notepad等文本编辑器,将代码拷贝至文本文件,然后修改后缀名为js或者jsx,最后再illustrator软件菜单文件》脚本》其它脚本,选择脚本文件,点执行即可,也可以将脚本放在预设文件夹内,会显示再脚本下的二级子菜单。如下图所示:
3.作者答疑代码长度过长,如需全部项目或有疑问,请留言。
提示: 作者知了-联系方式1 提示: 作者知了-联系方式2
,
