文章目录

  • 1.算法程序
  • 2.作者答疑

1.算法程序

  illustrator是矢量编辑软件,画板是绘制处理的重要容器,在印刷方面的一个重要功能就是条码生成,开发一个条码生成功能,以下功能仅用于学习交流,请勿用于非法用途和商业用途,源代码如下所示:

主窗口 = new Window("dialog", "条形码");
主窗口.bounds = [0, 0, 280, 315];
标签_类型 = 主窗口.add("statictext", [10, 25, 75, 45], "类    型:");
组合框_类型 = 主窗口.add("dropdownlist", [80, 20, 270, 45]);
标签_分切线 = 主窗口.add("statictext", [10, 50, 270, 65], "----------------------------------------------------------------------------------------------------------------------------------------------------------------------------");
标签_代码 = 主窗口.add("statictext", [10, 75, 75, 95], "代    码:");
编辑框_代码 = 主窗口.add("edittext", [80, 70, 220, 95]);
按钮_校验码 = 主窗口.add("button", [225, 70, 270, 95], "校验");
标签_减小宽度 = 主窗口.add("statictext", [10, 110, 75, 130], "减小宽度:");
编辑框_减小宽度 = 主窗口.add("edittext", [80, 105, 200, 130], "0mm");
标签_扩大比例 = 主窗口.add("statictext", [10, 145, 75, 160], "扩大比例:");
编辑框_扩大比例 = 主窗口.add("edittext", [80, 140, 200, 165], "100%");
标签_高度 = 主窗口.add("statictext", [10, 180, 75, 200], "高    度:");
编辑框_高度 = 主窗口.add("edittext", [80, 175, 200, 200], "0mm");
标签_宽度比例 = 主窗口.add("statictext", [10, 215, 75, 235], "宽度比例:");
编辑框_宽度比例 = 主窗口.add("edittext", [80, 210, 200, 235], "3");
复选框_外框 = 主窗口.add("checkbox", [10, 260, 110, 280], "添加黑色外框");
复选框_关闭 = 主窗口.add("checkbox", [10, 285, 110, 300], "自动关闭窗口");
标签_分切线 = 主窗口.add("statictext", [10, 240, 270, 250], "----------------------------------------------------------------------------------------------------------------------------------------------------------------------------");
按钮_取消 = 主窗口.add("button", [115, 255, 190, 300], "取消", {name: "cancel"
});
按钮_确认 = 主窗口.add("button", [195, 255, 270, 300], "确认", {name: "ok"
});
组合框_类型.add("item", "EAN 8 中国标准");
组合框_类型.add("item", "EAN 13 中国标准");
组合框_类型.add("item", "EAN 128 中国标准");
组合框_类型.add("item", "UPC-A 美国标准");
组合框_类型.add("item", "UPC-E 美国标准");
组合框_类型.add("item", "CODE 39 代条码");
组合框_类型.add("item", "CODE 93 代条码");
组合框_类型.add("item", "CODE 128 代条码");
组合框_类型.add("item", "CODE 128A 代条码");
组合框_类型.add("item", "CODE 128B 代条码");
组合框_类型.add("item", "CODE 128C 代条码");
组合框_类型.add("item", "ITF 14 交叉二五码");
组合框_类型.add("item", "ITF 25 交叉二五码");
编辑框_减小宽度.enabled = false;
编辑框_宽度比例.enabled = false;
复选框_外框.value = false;
复选框_关闭.value = true;
复选框_外框.enabled = false;
var安装程序_运行_路径 = app.path.fsName;
配置文件_标签路径 = new File(安装程序_运行_路径 + "\\条形码配置.txt");
配置文件_标签路径.open("r", "TEXT", "????");
var配置文件_标签内容 = 配置文件_标签路径.read();
var配置文件_标签数组 = 配置文件_标签内容.split(",");
if (配置文件_标签内容 == "" || 配置文件_标签数组.length <= 8) {组合框_类型.items[1].selected = true;编辑框_代码.text = "";编辑框_扩大比例.text = "100%";编辑框_高度.text = "0mm";编辑框_宽度比例.text = "3";编辑框_宽度比例.enabled = false;复选框_外框.enabled = false;复选框_关闭.value = true;
} else {编辑框_代码.text = 配置文件_标签数组 [0];var组合框_选择 = Number(配置文件_标签数组 [1]);组合框_类型.items[组合框_选择].selected = true;编辑框_扩大比例.text = 配置文件_标签数组 [2];编辑框_高度.text = 配置文件_标签数组 [3];编辑框_宽度比例.text = 配置文件_标签数组 [4];编辑框_宽度比例.enabled = eval(配置文件_标签数组 [5]);复选框_外框.value = eval(配置文件_标签数组 [6]);复选框_外框.enabled = eval(配置文件_标签数组 [7]);
}
组合框_类型.onChange = function () {编辑框_扩大比例.text = "100%";编辑框_高度.text = "0mm";编辑框_宽度比例.text = "3";复选框_外框.value = false;switch (组合框_类型.selection.index) {case 0:复选框_外框.enabled = false;编辑框_宽度比例.enabled = false;break;case 1:复选框_外框.enabled = false;编辑框_宽度比例.enabled = false;break;case 2:复选框_外框.enabled = true;编辑框_宽度比例.enabled = false;break;case 3:复选框_外框.enabled = false;编辑框_宽度比例.enabled = false;break;case 4:复选框_外框.enabled = false;编辑框_宽度比例.enabled = false;break;case 5:复选框_外框.enabled = true;编辑框_宽度比例.enabled = true;break;case 6:复选框_外框.enabled = false;编辑框_宽度比例.enabled = false;break;case 7:复选框_外框.enabled = true;编辑框_宽度比例.enabled = false;break;case 8:复选框_外框.enabled = true;编辑框_宽度比例.enabled = false;break;case 9:复选框_外框.enabled = true;编辑框_宽度比例.enabled = false;break;case 10:复选框_外框.enabled = true;编辑框_宽度比例.enabled = false;break;case 11:复选框_外框.enabled = false;编辑框_宽度比例.enabled = true;break;case 12:复选框_外框.enabled = true;编辑框_宽度比例.enabled = true;break;}
};
var mm = 2.834645669;
try {var当前文件 = activeDocument;当前文件.units = RulerUnits.Millimeters;当前文件.layers[0].visible = true;当前文件.layers[0].locked = false;
} catch (ex) {var当前文件 = app.documents.add(DocumentColorSpace.CMYK, 210 * mm, 297 * mm);当前文件.units = RulerUnits.Millimeters;当前文件.layers[0].visible = true;当前文件.layers[0].locked = false;
}
新白色 = new CMYKColor();
新白色.cyan = 0;
新白色.magenta = 0;
新白色.yellow = 0;
新白色.black = 0;
新黑色 = new CMYKColor();
新黑色.cyan = 0;
新黑色.magenta = 0;
新黑色.yellow = 0;
新黑色.black = 100;
try {var选择_物体 = activeDocument.selection;var直线_x位置 = 选择_物体 [0].left;var直线_y位置 = 选择_物体 [0].top;var规格_高度 = ((选择_物体 [0].height / 72) * 25.4) - 6.toFixed(0);var规格_宽度 = ((选择_物体 [0].width / 72) * 25.4) - 6.toFixed(0);if (规格_宽度 >= 规格_高度) {var代码_条高度 = 规格_高度;var代码_旋转 = false;}if (规格_宽度 < 规格_高度) {var代码_条高度 = 规格_宽度;var代码_旋转 = true;}if (代码_条高度 > 50 || 代码_条高度 < 5) {编辑框_高度.text = "0mm";var代码_旋转 = false;} else {编辑框_高度.text = 代码_条高度 + " mm";}
} catch (ex) {var直线_x位置 = 0;var直线_y位置 = 0;var代码_旋转 = false;
}
var字符集_代码 = Array(Array("0001101", "0100111", "1110010"), Array("0011001", "0110011", "1100110"), Array("0010011", "0011011", "1101100"), Array("0111101", "0100001", "1000010"), Array("0100011", "0011101", "1011100"), Array("0110001", "0111001", "1001110"), Array("0101111", "0000101", "1010000"), Array("0111011", "0010001", "1000100"), Array("0110111", "0001001", "1001000"), Array("0001011", "0010111", "1110100"));
var字符集_CODE代码 = Array("101001101101", "110100101011", "101100101011", "110110010101", "101001101011", "110100110101", "101100110101", "101001011011", "110100101101", "101100101101", "110101001011", "101101001011", "110110100101", "101011001011", "110101100101", "101101100101", "101010011011", "110101001101", "101101001101", "101011001101", "110101010011", "101101010011", "110110101001", "101011010011", "110101101001", "101101101001", "101010110011", "110101011001", "101101011001", "101011011001", "110010101011", "100110101011", "110011010101", "100101101011", "110010110101", "100110110101", "100101011011", "110010101101", "100110101101", "100100100101", "100100101001", "100101001001", "101001001001", "100101101101");
var字符集_CODE93代码 = Array("100010100", "101001000", "101000100", "101000010", "100101000", "100100100", "100100010", "101010000", "100010010", "100001010", "110101000", "110100100", "110100010", "110010100", "110010010", "110001010", "101101000", "101100100", "101100010", "100110100", "100011010", "101011000", "101001100", "101000110", "100101100", "100010110", "110110100", "110110010", "110101100", "110100110", "110010110", "110011010", "101101100", "101100110", "100110110", "100111010", "100101110", "111010100", "111010010", "111001010", "101101110", "101110110", "110101110", "100100110", "111011010", "111010110", "100110010", "101011110", "1010111101");
var字符集_CODE93扩展 = Array("二U", "一A", "一B", "一C", "一D", "一E", "一F", "一G", "一H", "一I", "一J", "一K", "一L", "一M", "一N", "一O", "一P", "一Q", "一R", "一S", "一T", "一U", "一V", "一W", "一X", "一Y", "一Z", "二A", "二B", "二C", "二D", "二E", " ", "三A", "三B", "三C", "$", "%", "三F", "三G", "三H", "三I", "三J", "+", "三L", "-", ".", "/", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "三Z", "二F", "二G", "二H", "二I", "二J", "二V", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "二K", "二L", "二M", "二N", "二O", "二W", "四A", "四B", "四C", "四D", "四E", "四F", "四G", "四H", "四I", "四J", "四K", "四L", "四M", "四N", "四O", "四P", "四Q", "四R", "四S", "四T", "四U", "四V", "四W", "四X", "四Y", "四Z", "二P", "二Q", "二R", "二S", "二T");
var字符集_CODE128代码 = Array("11011001100", "11001101100", "11001100110", "10010011000", "10010001100", "10001001100", "10011001000", "10011000100", "10001100100", "11001001000", "11001000100", "11000100100", "10110011100", "10011011100", "10011001110", "10111001100", "10011101100", "10011100110", "11001110010", "11001011100", "11001001110", "11011100100", "11001110100", "11101101110", "11101001100", "11100101100", "11100100110", "11101100100", "11100110100", "11100110010", "11011011000", "11011000110", "11000110110", "10100011000", "10001011000", "10001000110", "10110001000", "10001101000", "10001100010", "11010001000", "11000101000", "11000100010", "10110111000", "10110001110", "10001101110", "10111011000", "10111000110", "10001110110", "11101110110", "11010001110", "11000101110", "11011101000", "11011100010", "11011101110", "11101011000", "11101000110", "11100010110", "11101101000", "11101100010", "11100011010", "11101111010", "11001000010", "11110001010", "10100110000", "10100001100", "10010110000", "10010000110", "10000101100", "10000100110", "10110010000", "10110000100", "10011010000", "10011000010", "10000110100", "10000110010", "11000010010", "11001010000", "11110111010", "11000010100", "10001111010", "10100111100", "10010111100", "10010011110", "10111100100", "10011110100", "10011110010", "11110100100", "11110010100", "11110010010", "11011011110", "11011110110", "11110110110", "10101111000", "10100011110", "10001011110", "10111101000", "10111100010", "11110101000", "11110100010", "10111011110", "10111101110", "11101011110", "11110101110", "11010000100", "11010010000", "11010011100", "1100011101011");
var字符集_EAN13前缀 = Array("000000", "001011", "001101", "001110", "010011", "011001", "011100", "010101", "010110", "011010");
var字符集_UPCE前缀 = Array("111000", "110100", "110010", "110001", "101100", "100110", "100011", "101010", "101001", "100101");
var字符_CODE39 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%*";
var字符_CODE93 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%一二三四*";
var字符_CODE93扩展 = "空标正文传请收响退水换垂页回不启据设备控制接同输取介替溢件分记单 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~删";
var字符_CODE128 = " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~";
var字符集_ITF前缀 = Array("00110", "10001", "01001", "11000", "00101", "10100", "01100", "00011", "10010", "01010");
var EAN校验码 = function (文本_代码) {文本_代码 = 文本_代码.substr(0, 12);var文本_奇数 = 0;for (var i = 1; i < 13; i += 2) {文本_奇数 += parseInt(文本_代码.charAt(i - 1));}var文本_偶数 = 0;for (var i = 2; i < 13; i += 2) {文本_偶数 += parseInt(文本_代码.charAt(i - 1));}var文本_总合 = 文本_奇数 + (文本_偶数 * 3);文本_总合 = String(文本_总合).charAt(String(文本_总合).length - 1);文本_总合 = 10 - 文本_总合;if (文本_总合 == 10) {文本_总合 = 0;}文本_代码 += String(文本_总合);return文本_代码;
};
var UPC校验码 = function (文本_代码) {文本_代码 = 文本_代码.substr(0, 11);var文本_奇数 = 0;for (var i = 1; i < 12; i += 2) {文本_奇数 += parseInt(文本_代码.charAt(i - 1));}var文本_偶数 = 0;for (var i = 2; i < 12; i += 2) {文本_偶数 += parseInt(文本_代码.charAt(i - 1));}var文本_总合 = (文本_奇数 * 3) + 文本_偶数;文本_总合 = String(文本_总合).charAt(String(文本_总合).length - 1);文本_总合 = 10 - 文本_总合;if (文本_总合 == 10) {文本_总合 = 0;}文本_代码 += String(文本_总合);return文本_代码;
};
var UPCE转码 = function (文本_代码) {switch (Number(文本_代码.substr(5, 1))) {case 0:case 1:case 2:文本_代码 = "0" + 文本_代码.substr(0, 2) + 文本_代码.substr(5, 1) + "0000" + 文本_代码.substr(2, 3);break;case 3:文本_代码 = "0" + 文本_代码.substr(0, 3) + "00000" + 文本_代码.substr(3, 2);break;case 4:文本_代码 = "0" + 文本_代码.substr(0, 4) + "00000" + 文本_代码.substr(4, 1);break;case 5:case 6:case 7:case 8:case 9:文本_代码 = "0" + 文本_代码.substr(0, 5) + "0000" + 文本_代码.substr(5, 1);break;}return文本_代码;
};
var CODE93校验码 = function (文本_代码) {var文本_奇数 = 0;var文本_偶数 = 1;var文本_奇数总合 = 0;var文本_偶数总合 = 0;for (i = 文本_代码.length - 1; i >= 0; i--) {if (文本_奇数 >= 20) {文本_奇数 = 1;} else {文本_奇数 += 1;}if (文本_偶数 >= 15) {文本_偶数 = 1;} else {文本_偶数 += 1;}var文本_位置 = 字符_CODE93.indexOf(文本_代码.charAt(i));文本_奇数总合 += (文本_奇数 * 文本_位置);文本_偶数总合 += (文本_偶数 * 文本_位置);}文本_奇数总合 = 文本_奇数总合 % 47;文本_偶数总合 += 文本_奇数总合;文本_偶数总合 = 文本_偶数总合 % 47;return文本_奇数总合 + "," + 文本_偶数总合;
};
var CODE128AB校验码 = function (文本_代码, 代码_类型) {switch (代码_类型) {case "A":var文本_总合 = 103;for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));文本_总合 += (文本_位置 * (i + 1));}文本_总合 = 文本_总合 % 103;return文本_总合;break;case "B":var文本_总合 = 104;for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));文本_总合 += (文本_位置 * (i + 1));}文本_总合 = 文本_总合 % 103;return文本_总合;break;case "C":var文本_总合 = 105;for (var i = 0; i < 文本_代码.length / 2; i += 1) {var文本_位置 = Number(文本_代码.substr(i * 2, 2));文本_总合 += (文本_位置 * (i + 1));}文本_总合 = 文本_总合 % 103;return文本_总合;break;}
};
var ITF校验码 = function (文本_代码) {var文本_长度 = 文本_代码.length;var文本_奇数 = 0;for (var i = 2; i < 文本_长度 + 1; i += 2) {文本_奇数 += parseInt(文本_代码.charAt(i - 1));}var文本_偶数 = 0;for (var i = 1; i < 文本_长度 + 1; i += 2) {文本_偶数 += parseInt(文本_代码.charAt(i - 1));}var文本_总合 = 文本_奇数 + (文本_偶数 * 3);文本_总合 = String(文本_总合).charAt(String(文本_总合).length - 1);文本_总合 = 10 - 文本_总合;if (文本_总合 == 10) {文本_总合 = 0;}文本_代码 += String(文本_总合);return文本_代码;
};
按钮_校验码.onClick = function () {var文本_代码 = 编辑框_代码.text;switch (组合框_类型.selection.index) {case 0:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码.length <= 6) {alert("输入错误,数字输入小于7位!", "错误提示", 2);return false;}文本_代码 = "00000" + 文本_代码.substr(0, 7);var文本_代码 = EAN校验码(文本_代码);文本_代码 = String(文本_代码.substr(5, 12));编辑框_代码.text = 文本_代码;break;case 1:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码.length <= 11) {alert("输入错误,数字输入小于12位!", "错误提示", 2);return false;}var文本_代码 = String(EAN校验码(文本_代码));编辑框_代码.text = 文本_代码;break;case 3:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码.length <= 10) {alert("输入错误,数字输入小于11位!", "错误提示", 2);return false;}var文本_代码 = String(UPC校验码(文本_代码));编辑框_代码.text = 文本_代码;break;case 4:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码.substr(0, 1) != "0") {alert("输入错误,第一位数字必须是0!", "错误提示", 2);return false;}if (文本_代码.length <= 6) {alert("输入错误,数字输入小于7位!", "错误提示", 2);return false;}文本_代码 = 文本_代码.substr(1, 6);var文本_原代码 = 文本_代码;var文本_转码 = UPCE转码(文本_代码);var文本_代码 = String(UPC校验码(文本_转码));文本_代码 = "0" + 文本_原代码 + 文本_代码.substr(11, 1);编辑框_代码.text = 文本_代码;break;case 5:文本_代码 = 文本_代码.substr(0, 28);文本_代码 = 文本_代码.toUpperCase();文本_代码 = 文本_代码.replace(/[*]/ig, "");for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE39.indexOf(文本_代码.charAt(i));if (文本_位置 == -1) {alert("输入错误,输入非法字符!", "错误提示", 2);return false;}}编辑框_代码.text = 文本_代码;break;case 6:文本_代码 = 文本_代码.substr(0, 28);for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE93扩展.indexOf(文本_代码.charAt(i));if (文本_位置 == -1) {alert("输入错误,输入非法字符!", "错误提示", 2);return false;}}编辑框_代码.text = 文本_代码;break;case 11:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码.length <= 12) {alert("输入错误,数字输入小于13位!", "错误提示", 2);return false;}文本_代码 = 文本_代码.substr(0, 13);var文本_代码 = String(ITF校验码(文本_代码));编辑框_代码.text = 文本_代码;break;}
};
var EAN条码生成 = function (文本_代码) {var文本_左侧 = 字符集_EAN13前缀 [文本_代码.charAt(0)];if (文本_代码.length == 8) {var最小值 = 0;var中间值 = 4;var最大值 = 8;var长条_Y2大小 = String(Number(编辑框_高度.text) + 1.65);var短条_Y2大小 = 编辑框_高度.text;}if (文本_代码.length == 12) {var最小值 = 0;var中间值 = 6;var最大值 = 12;var长条_Y2大小 = String(Number(编辑框_高度.text) + 1.65);var短条_Y2大小 = 编辑框_高度.text;}if (文本_代码.length == 13) {var最小值 = 1;var中间值 = 7;var最大值 = 13;var长条_Y2大小 = String(Number(编辑框_高度.text) + 1.65);var短条_Y2大小 = 编辑框_高度.text;}var代码_数据数组 = new Array();代码_数据数组 [0] = "-0.33,1.32,0.33," + 长条_Y2大小;代码_数据数组 [1] = "-0.33,1.98,0.33," + 长条_Y2大小;for (var i = 最小值; i < 中间值; i++) {var代码_数据 = 字符集_代码 [文本_代码.charAt(i)][文本_左侧.charAt(i - 1)];if (文本_代码.length == 8 || 文本_代码.length == 12) {var代码_数据 = 字符集_代码 [文本_代码.charAt(i)][0];var代码_加减大小 = 0;if (文本_代码.charAt(i) == 1 || 文本_代码.charAt(i) == 2) {代码_加减大小 = -0.025;}if (文本_代码.charAt(i) == 7 || 文本_代码.charAt(i) == 8) {代码_加减大小 = 0.025;}} else {var代码_加减大小 = 0;if (文本_代码.charAt(i) == 1 || 文本_代码.charAt(i) == 2) {if (文本_左侧.charAt(i - 1) == "0") {代码_加减大小 = -0.025;} else {代码_加减大小 = 0.025;}}if (文本_代码.charAt(i) == 7 || 文本_代码.charAt(i) == 8) {if (文本_左侧.charAt(i - 1) == "0") {代码_加减大小 = 0.025;} else {代码_加减大小 = -0.025;}}}var代码_分割数组 = 代码_数据.split("0");var代码_大小数组 = new Array();for (var a = 0; a < 代码_分割数组.length; a += 1) {if (代码_分割数组 [a] != "") {代码_大小数组.push(代码_分割数组 [a]);}}var代码_X1位置 = 代码_数据.indexOf(代码_大小数组 [0], 0);var代码_X1大小 = (0.33 * 代码_X1位置) - 代码_加减大小;var代码_X2大小 = (0.33 * 代码_大小数组 [0].length) + 代码_加减大小;var代码_X3位置 = 代码_数据.indexOf(代码_大小数组 [1], 代码_X1位置 + 代码_大小数组 [0].length);var代码_X3大小 = (0.33 * 代码_X3位置) - 代码_加减大小;var代码_X4大小 = (0.33 * 代码_大小数组 [1].length) + 代码_加减大小;var代码_Y1大小 = -0.33;var代码_Y2大小 = 短条_Y2大小;if (文本_代码.length == 12 && i < 1) {var代码_Y2大小 = 长条_Y2大小;}代码_数据数组.push(代码_Y1大小 + "," + 代码_X1大小 + "," + 代码_X2大小 + "," + 代码_Y2大小);代码_数据数组.push(代码_Y1大小 + "," + 代码_X3大小 + "," + 代码_X4大小 + "," + 代码_Y2大小);}代码_数据数组.push("-0.33,0.33,0.33," + 长条_Y2大小);代码_数据数组.push("-0.33,0.99,0.33," + 长条_Y2大小);for (var i = 中间值; i < 最大值; i++) {var代码_数据 = 字符集_代码 [文本_代码.charAt(i)][2];var代码_加减大小 = 0;if (文本_代码.charAt(i) == 1 || 文本_代码.charAt(i) == 2) {代码_加减大小 = 0.025;}if (文本_代码.charAt(i) == 7 || 文本_代码.charAt(i) == 8) {代码_加减大小 = -0.025;}var代码_分割数组 = 代码_数据.split("0");var代码_大小数组 = new Array();for (var a = 0; a < 代码_分割数组.length; a += 1) {if (代码_分割数组 [a] != "") {代码_大小数组.push(代码_分割数组 [a]);}}var代码_X1位置 = 代码_数据.indexOf(代码_大小数组 [0], 0);var代码_X1大小 = 0.33 * 代码_X1位置;var代码_X2大小 = (0.33 * 代码_大小数组 [0].length) + 代码_加减大小;var代码_X3位置 = 代码_数据.indexOf(代码_大小数组 [1], 代码_X1位置 + 代码_大小数组 [0].length);var代码_X3大小 = 0.33 * 代码_X3位置;var代码_X4大小 = (0.33 * 代码_大小数组 [1].length) + 代码_加减大小;var代码_Y1大小 = -0.33;var代码_Y2大小 = 短条_Y2大小;if (文本_代码.length == 12 && i > 10) {var代码_Y2大小 = 长条_Y2大小;}代码_数据数组.push(代码_Y1大小 + "," + 代码_X1大小 + "," + 代码_X2大小 + "," + 代码_Y2大小);代码_数据数组.push(代码_Y1大小 + "," + 代码_X3大小 + "," + 代码_X4大小 + "," + 代码_Y2大小);}代码_数据数组.push("-0.33,0,0.33," + 长条_Y2大小);代码_数据数组.push("-0.33,0.66,0.33," + 长条_Y2大小);return代码_数据数组;
};
var UPCE条码生成 = function (文本_代码) {var文本_左侧 = 字符集_UPCE前缀 [文本_代码.charAt(7)];var代码_Y3大小 = String(Number(编辑框_高度.text) + 1.65);var代码_数据数组 = new Array();代码_数据数组 [0] = "-0.33,1.32,0.33," + 代码_Y3大小;代码_数据数组 [1] = "-0.33,1.98,0.33," + 代码_Y3大小;for (var i = 1; i < 7; i += 1) {var代码_数据 = 字符集_代码 [文本_代码.charAt(i)][文本_左侧.charAt(i - 1)];var代码_加减大小 = 0;if (文本_代码.charAt(i) == 1 || 文本_代码.charAt(i) == 2) {if (文本_左侧.charAt(i - 1) == "0") {代码_加减大小 = -0.025;} else {代码_加减大小 = 0.025;}}if (文本_代码.charAt(i) == 7 || 文本_代码.charAt(i) == 8) {if (文本_左侧.charAt(i - 1) == "0") {代码_加减大小 = 0.025;} else {代码_加减大小 = -0.025;}}var代码_分割数组 = 代码_数据.split("0");var代码_大小数组 = new Array();for (var a = 0; a < 代码_分割数组.length; a += 1) {if (代码_分割数组 [a] != "") {代码_大小数组.push(代码_分割数组 [a]);}}var代码_X1位置 = 代码_数据.indexOf(代码_大小数组 [0], 0);var代码_X1大小 = (0.33 * 代码_X1位置) - 代码_加减大小;var代码_X2大小 = (0.33 * 代码_大小数组 [0].length) + 代码_加减大小;var代码_X3位置 = 代码_数据.indexOf(代码_大小数组 [1], 代码_X1位置 + 代码_大小数组 [0].length);var代码_X3大小 = (0.33 * 代码_X3位置) - 代码_加减大小;var代码_X4大小 = (0.33 * 代码_大小数组 [1].length) + 代码_加减大小;var代码_Y1大小 = -0.33;var代码_Y2大小 = 编辑框_高度.text;代码_数据数组.push(代码_Y1大小 + "," + 代码_X1大小 + "," + 代码_X2大小 + "," + 代码_Y2大小);代码_数据数组.push(代码_Y1大小 + "," + 代码_X3大小 + "," + 代码_X4大小 + "," + 代码_Y2大小);}代码_数据数组.push("-0.33,0.33,0.33," + 代码_Y3大小);代码_数据数组.push("-0.33,0.99,0.33," + 代码_Y3大小);代码_数据数组.push("-0.33,1.32,0.33," + 代码_Y3大小);return代码_数据数组;
};
var EAN条码画出 = function (文本_代码, 代码_数据数组) {if (文本_代码.length == 8) {var白底_X2大小 = 26.73;var白底_Y2大小 = String(Number(编辑框_高度.text) + 3.79);var中间值 = 11;var调整最小值 = 0.33;var调整最大值 = 0.99;}if (文本_代码.length == 12) {var白底_X2大小 = 37.29;var白底_Y2大小 = String(Number(编辑框_高度.text) + 3.79);var中间值 = 15;var调整最小值 = 0.99;var调整最大值 = 1.65;}if (文本_代码.length == 13) {var白底_X2大小 = 37.29;var白底_Y2大小 = String(Number(编辑框_高度.text) + 3.79);var中间值 = 15;var调整最小值 = 1.65;var调整最大值 = 2.31;}var新建_群组 = 当前文件.groupItems.add();var画矩形 = 新建_群组.pathItems.rectangle(0, 0, 白底_X2大小 * mm, 白底_Y2大小 * mm);画矩形.fillColor = 新白色;画矩形.strokeColor = NoColor;for (var a = 0; a < 代码_数据数组.length; a += 1) {var代码_分割数组 = 代码_数据数组 [a].split(",");var代码_Y1大小 = 代码_分割数组 [0];if ((a % 2) == 0) {var代码_X1位置 = (a / 2) * 2.31;}if (a > 中间值) {var代码_X1大小 = Number(代码_分割数组 [1]) + 代码_X1位置 + 调整最小值;} else {var代码_X1大小 = Number(代码_分割数组 [1]) + 代码_X1位置 + 调整最大值;}var代码_X2大小 = 代码_分割数组 [2];var代码_Y2大小 = 代码_分割数组 [3];var第一位 = 新建_群组.pathItems.rectangle(代码_Y1大小 * mm, 代码_X1大小 * mm, 代码_X2大小 * mm, 代码_Y2大小 * mm);第一位.fillColor = 新黑色;第一位.strokeColor = NoColor;}
};
var CODE128代码_类型 = function (文本_代码) {if (/[a-z]/.test(文本_代码)) {return "B";}if (文本_代码.length > 3) {if (/^[0-9]+$/.test(文本_代码)) {return "C";}}return "A";
};
var Code128ABC条码生成 = function (文本_代码, 代码_类型) {var文本_校验码 = Number(CODE128AB校验码(文本_代码, 代码_类型));var代码_数据 = "";if (代码_类型 == "A") {代码_数据 = 字符集_CODE128代码 [103];for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));代码_数据 += 字符集_CODE128代码 [文本_位置];}代码_数据 += 字符集_CODE128代码 [文本_校验码] + 字符集_CODE128代码 [106];}if (代码_类型 == "B") {代码_数据 = 字符集_CODE128代码 [104];for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));代码_数据 += 字符集_CODE128代码 [文本_位置];}代码_数据 += 字符集_CODE128代码 [文本_校验码] + 字符集_CODE128代码 [106];}if (代码_类型 == "C") {代码_数据 = 字符集_CODE128代码 [105];for (var i = 0; i < 文本_代码.length / 2; i += 1) {var文本_位置 = Number(文本_代码.substr(i * 2, 2));代码_数据 += 字符集_CODE128代码 [文本_位置];}代码_数据 += 字符集_CODE128代码 [文本_校验码] + 字符集_CODE128代码 [106];}return代码_数据;
};
var EAN128条码生成 = function (文本_代码) {var文本_原代码 = 文本_代码;var文本_数字 = 文本_代码.match(/\d+/ig);if (文本_数字 != null) {var文本_处理数组 = new Array();for (var a = 0; a < 文本_数字.length; a += 1) {if (文本_数字 [a].length > 3) {if ((文本_数字 [a].length % 2) == 0) {文本_处理数组.push(文本_数字 [a]);} else {var文本_长度 = 文本_数字 [a].length - 1;if (a == 0) {var文本_临时 = 文本_数字 [a].substr(0, 文本_长度);} else {var文本_临时 = 文本_数字 [a].substr(1, 文本_长度);}文本_处理数组.push(文本_临时);}}}if (文本_处理数组.length > 0) {for (var a = 0; a < 文本_处理数组.length; a += 1) {var文本_替换 = 文本_处理数组 [a];文本_代码 = 文本_代码.replace(文本_替换, ",");}for (var a = 0; a < 文本_处理数组.length; a += 1) {var文本_替换 = 文本_处理数组 [a];文本_代码 = 文本_代码.replace(",", "。" + 文本_替换 + "。");}if (文本_代码.substr(0, 1) == "。") {文本_代码 = 文本_代码.substr(1);}var文本_长度 = 文本_代码.length - 1;if (文本_代码.substr(文本_长度, 1) == "。") {文本_代码 = 文本_代码.substr(0, 文本_长度);}}var文本_临时 = 文本_代码.split("。");if (文本_处理数组.length == 1 && 文本_处理数组 [0].length < 5 && 文本_临时.length > 2) {文本_代码 = 文本_原代码;}}var文本_临时 = 文本_代码.split("。");文本_代码 = 文本_临时 [0];var代码_类型 = CODE128代码_类型(文本_代码);var文本_计次 = 1;var文本_总合 = 0;var代码_数据 = "";if (代码_类型 == "A") {代码_数据 = 字符集_CODE128代码 [103] + 字符集_CODE128代码 [102];文本_总合 = 205;for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * 文本_计次);}}if (代码_类型 == "B") {代码_数据 = 字符集_CODE128代码 [104] + 字符集_CODE128代码 [102];文本_总合 = 206;for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * 文本_计次);}}if (代码_类型 == "C") {代码_数据 = 字符集_CODE128代码 [105] + 字符集_CODE128代码 [102];文本_总合 = 207;for (var i = 0; i < 文本_代码.length / 2; i += 1) {var文本_位置 = Number(文本_代码.substr(i * 2, 2));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * 文本_计次);}}if (文本_临时.length > 0) {for (var a = 1; a < 文本_临时.length; a += 1) {var代码_类型 = CODE128代码_类型(文本_临时 [a]);文本_代码 = 文本_临时 [a];if (代码_类型 == "A") {代码_数据 += 字符集_CODE128代码 [101];文本_计次 += 1;文本_总合 += (101 * 文本_计次);for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * 文本_计次);}}if (代码_类型 == "B") {代码_数据 += 字符集_CODE128代码 [100];文本_计次 += 1;文本_总合 += (100 * 文本_计次);for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * 文本_计次);}}if (代码_类型 == "C") {代码_数据 += 字符集_CODE128代码 [99];文本_计次 += 1;文本_总合 += (99 * 文本_计次);for (var i = 0; i < 文本_代码.length / 2; i += 1) {var文本_位置 = Number(文本_代码.substr(i * 2, 2));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * 文本_计次);}}}}文本_总合 = 文本_总合 % 103;代码_数据 += 字符集_CODE128代码 [文本_总合] + 字符集_CODE128代码 [106];return代码_数据;
};
var Code128条码生成 = function (文本_代码) {var文本_原代码 = 文本_代码;var文本_数字 = 文本_代码.match(/\d+/ig);if (文本_数字 != null) {var文本_处理数组 = new Array();for (var a = 0; a < 文本_数字.length; a += 1) {if (文本_数字 [a].length > 3) {if ((文本_数字 [a].length % 2) == 0) {文本_处理数组.push(文本_数字 [a]);} else {var文本_长度 = 文本_数字 [a].length - 1;if (a == 0) {var文本_临时 = 文本_数字 [a].substr(0, 文本_长度);} else {var文本_临时 = 文本_数字 [a].substr(1, 文本_长度);}文本_处理数组.push(文本_临时);}}}if (文本_处理数组.length > 0) {for (var a = 0; a < 文本_处理数组.length; a += 1) {var文本_替换 = 文本_处理数组 [a];文本_代码 = 文本_代码.replace(文本_替换, ",");}for (var a = 0; a < 文本_处理数组.length; a += 1) {var文本_替换 = 文本_处理数组 [a];文本_代码 = 文本_代码.replace(",", "。" + 文本_替换 + "。");}if (文本_代码.substr(0, 1) == "。") {文本_代码 = 文本_代码.substr(1);}var文本_长度 = 文本_代码.length - 1;if (文本_代码.substr(文本_长度, 1) == "。") {文本_代码 = 文本_代码.substr(0, 文本_长度);}}var文本_临时 = 文本_代码.split("。");if (文本_处理数组.length == 1 && 文本_处理数组 [0].length < 5 && 文本_临时.length > 2) {文本_代码 = 文本_原代码;}}var文本_临时 = 文本_代码.split("。");文本_代码 = 文本_临时 [0];var代码_类型 = CODE128代码_类型(文本_代码);var文本_计次 = 0;var文本_总合 = 0;var代码_数据 = "";if (代码_类型 == "A") {代码_数据 = 字符集_CODE128代码 [103];文本_总合 = 103;for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * (i + 1));}}if (代码_类型 == "B") {代码_数据 = 字符集_CODE128代码 [104];文本_总合 = 104;for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * (i + 1));}}if (代码_类型 == "C") {代码_数据 = 字符集_CODE128代码 [105];文本_总合 = 105;for (var i = 0; i < 文本_代码.length / 2; i += 1) {var文本_位置 = Number(文本_代码.substr(i * 2, 2));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * (i + 1));}}if (文本_临时.length > 0) {for (var a = 1; a < 文本_临时.length; a += 1) {var代码_类型 = CODE128代码_类型(文本_临时 [a]);文本_代码 = 文本_临时 [a];if (代码_类型 == "A") {代码_数据 += 字符集_CODE128代码 [101];文本_计次 += 1;文本_总合 += (101 * 文本_计次);for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * 文本_计次);}}if (代码_类型 == "B") {代码_数据 += 字符集_CODE128代码 [100];文本_计次 += 1;文本_总合 += (100 * 文本_计次);for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * 文本_计次);}}if (代码_类型 == "C") {代码_数据 += 字符集_CODE128代码 [99];文本_计次 += 1;文本_总合 += (99 * 文本_计次);for (var i = 0; i < 文本_代码.length / 2; i += 1) {var文本_位置 = Number(文本_代码.substr(i * 2, 2));代码_数据 += 字符集_CODE128代码 [文本_位置];文本_计次 += 1;文本_总合 += (文本_位置 * 文本_计次);}}}}文本_总合 = 文本_总合 % 103;代码_数据 += 字符集_CODE128代码 [文本_总合] + 字符集_CODE128代码 [106];return代码_数据;
};
var CODE128条码画出 = function (文本_代码, 代码_数据) {var代码_分割数组 = 代码_数据.split("0");var代码_大小数组 = new Array();for (var a = 0; a < 代码_分割数组.length; a += 1) {if (代码_分割数组 [a] != "") {代码_大小数组.push(代码_分割数组 [a]);}}var条码_高度 = Number(编辑框_高度.text);var矩形_X2大小 = (0.33 * 代码_数据.length) + 6.6;var矩形_Y2大小 = String(Number(编辑框_高度.text) + 4.99);var代码_X1位置 = 0;var代码_X2位置 = 0;var代码_X3位置 = 0;var新建_群组 = 当前文件.groupItems.add();if (复选框_外框.value == true) {矩形_Y2大小 = Number(编辑框_高度.text) + 6.31;var画矩形 = 新建_群组.pathItems.rectangle(0, 0, 矩形_X2大小 * mm, 矩形_Y2大小 * mm);画矩形.fillColor = 新白色;画矩形.strokeColor = NoColor;var画矩形上 = 新建_群组.pathItems.rectangle(-0.33 * mm, 3.3 * mm, 0.33 * 代码_数据.length * mm, 0.66 * mm);画矩形上.fillColor = 新黑色;画矩形上.strokeColor = NoColor;var画矩形下 = 新建_群组.pathItems.rectangle(-(条码_高度 + 0.99) * mm, 3.3 * mm, 0.33 * 代码_数据.length * mm, 0.66 * mm);画矩形下.fillColor = 新黑色;画矩形下.strokeColor = NoColor;var代码_Y1大小 = -0.99;var代码_Y移动 = Number(编辑框_高度.text) + 1.785;} else {var画矩形 = 新建_群组.pathItems.rectangle(0, 0, 矩形_X2大小 * mm, 矩形_Y2大小 * mm);画矩形.fillColor = 新白色;画矩形.strokeColor = NoColor;var代码_Y1大小 = -0.33;var代码_Y移动 = Number(编辑框_高度.text) + 0.465;}for (var i = 0; i < 代码_大小数组.length; i += 1) {var代码_X1位置 = 代码_数据.indexOf(代码_大小数组 [i], 代码_X1位置);代码_X2位置 = 代码_X1位置 + 代码_大小数组 [i].length;代码_X3位置 = 代码_数据.indexOf(代码_大小数组 [i + 1], 代码_X2位置);代码_X3位置 -= 代码_X2位置;var代码_X1大小 = 0.33 * 代码_X1位置;var代码_X2大小 = 0.33 * 代码_大小数组 [i].length;var代码_Y2大小 = 编辑框_高度.text;代码_X1大小 += 3.3;代码_X1位置 += 代码_大小数组 [i].length;var第一位 = 新建_群组.pathItems.rectangle(代码_Y1大小 * mm, 代码_X1大小 * mm, 代码_X2大小 * mm, 代码_Y2大小 * mm);第一位.fillColor = 新黑色;第一位.strokeColor = NoColor;}for (var i = 0; i < 文本_代码.length; i += 1) {var代码_位置 = ((5.596 + (2.31 * (i - 1))) * 72) / 25.4;文字_新建 = 新建_群组.textFrames.add();文字_新建.contents = 文本_代码.charAt(i);文字_新建.textRange.characterAttributes.size = 11.01;文字_新建.textRange.characterAttributes.textFont = textFonts.getByName("OCRB10PitchBT-Regular");文字_新建.left = 0;文字_新建.top = 0;文字_新建.translate(代码_位置, -((代码_Y移动 * 72) / 25.4));}
};
按钮_确认.onClick = function () {var文本_代码 = 编辑框_代码.text;var条码_比例 = 编辑框_扩大比例.text;条码_比例 = 条码_比例.replace(/-/ig, "");条码_比例 = 条码_比例.replace(/\s/g, "");条码_比例 = 条码_比例.replace(/[^0-9]/ig, "");if (条码_比例.length <= 0 || 条码_比例 < 80 || 条码_比例 > 200) {条码_比例 = "100";}编辑框_扩大比例.text = 条码_比例 + "%";条码_比例 = Number(条码_比例) / 100;var条码_原高度 = 编辑框_高度.text;条码_原高度 = 条码_原高度.replace(/[^0-9.]/ig, "");switch (组合框_类型.selection.index) {case 0:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码.length <= 6) {alert("输入错误,数字输入小于7位!", "错误提示", 2);return false;}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 18.23 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;文本_代码 = "00000" + 文本_代码.substr(0, 7);var文本_代码 = EAN校验码(文本_代码);文本_代码 = String(文本_代码.substr(5, 12));var代码_数据数组 = EAN条码生成(文本_代码);EAN条码画出(文本_代码, 代码_数据数组);var新建_群组 = 当前文件.groupItems[0];编辑框_代码.text = 文本_代码;for (var i = 0; i < 8; i += 1) {var代码_位置 = 0;var代码_Y移动 = 条码_高度 - 0.068;文字_新建 = 新建_群组.textFrames.add();文字_新建.contents = 文本_代码.charAt(i);文字_新建.textRange.characterAttributes.textFont = textFonts.getByName("OCRB10PitchBT-Regular");文字_新建.paragraphs[0].size = 12.64;文字_新建.left = 0;文字_新建.top = 0;if (i <= 3) {var代码_位置 = (6.54803149606299 * (i + 1)) + 2.80629921259843;}if (i > 3) {var代码_位置 = (6.54803149606299 * (i + 1)) + 7.48346456692913;}var代码_减去 = (文字_新建.width - 6.54803149606299) / 2;文字_新建.translate(代码_位置 - 代码_减去, -((代码_Y移动 * 72) / 25.4));}编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 1:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码.length <= 11) {alert("输入错误,数字输入小于12位!", "错误提示", 2);return false;}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 22.85 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;文本_代码 = 文本_代码.substr(0, 12);var文本_代码 = String(EAN校验码(文本_代码));var代码_数据数组 = EAN条码生成(文本_代码);EAN条码画出(文本_代码, 代码_数据数组);var新建_群组 = 当前文件.groupItems[0];编辑框_代码.text = 文本_代码;for (var i = 0; i < 13; i += 1) {var代码_位置 = 0;var代码_Y移动 = 条码_高度 - 0.07;文字_新建 = 新建_群组.textFrames.add();文字_新建.contents = 文本_代码.charAt(i);文字_新建.textRange.characterAttributes.textFont = textFonts.getByName("OCRB10PitchBT-Regular");文字_新建.paragraphs[0].size = 12.64;文字_新建.left = 0;文字_新建.top = 0;if (i > 0) {var代码_位置 = 6.54803149606299 * (i + 1);}if (i > 6) {var代码_位置 = (6.54803149606299 * (i + 1)) + 4.67716535433071;}var代码_减去 = (文字_新建.width - 6.54803149606299) / 2;文字_新建.translate(代码_位置 - 代码_减去, -((代码_Y移动 * 72) / 25.4));}编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 2:文本_代码 = 文本_代码.substr(0, 70);if (文本_代码 == "") {alert("输入错误,没有输入字符!", "错误提示", 2);return false;}for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));if (文本_位置 == -1) {alert("输入错误,输入非法字符!", "错误提示", 2);return false;}}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 31.8 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;编辑框_代码.text = 文本_代码;var代码_数据 = EAN128条码生成(文本_代码);CODE128条码画出(文本_代码, 代码_数据);编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 3:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码.length <= 10) {alert("输入错误,数字输入小于11位!", "错误提示", 2);return false;}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 22.85 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;文本_代码 = 文本_代码.substr(0, 11);var文本_代码 = String(UPC校验码(文本_代码));var代码_数据数组 = EAN条码生成(文本_代码);EAN条码画出(文本_代码, 代码_数据数组);var新建_群组 = 当前文件.groupItems[0];编辑框_代码.text = 文本_代码;for (var i = 0; i < 12; i += 1) {var代码_位置 = 0;var代码_Y移动 = 条码_高度 + 0.053;文字_新建 = 新建_群组.textFrames.add();文字_新建.contents = 文本_代码.charAt(i);文字_新建.textRange.characterAttributes.textFont = textFonts.getByName("OCRB10PitchBT-Regular");文字_新建.left = 0;文字_新建.top = 0;if (i == 0) {文字_新建.left = -0.935433070866142 - 0.467716535433071;}if (i == 0 || i == 11) {文字_新建.paragraphs[0].size = 9.28;} else {文字_新建.paragraphs[0].size = 12.38;}if (i > 0) {var代码_位置 = (6.54803149606299 * (i + 1)) + 4.67716535433071;}if (i > 5) {var代码_位置 = (6.54803149606299 * (i + 1)) + 9.35433070866142;}if (i > 10) {var代码_位置 = (6.54803149606299 * (i + 1)) + 21.979842519685;}var代码_减去 = (文字_新建.width - 6.54803149606299) / 2;文字_新建.translate(代码_位置 - 代码_减去, -((代码_Y移动 * 72) / 25.4));}编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 4:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码.substr(0, 1) != "0") {alert("输入错误,第一位数字必须是0!", "错误提示", 2);return false;}if (文本_代码.length <= 6) {alert("输入错误,数字输入小于7位!", "错误提示", 2);return false;}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 22.85 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;文本_代码 = 文本_代码.substr(1, 6);var文本_原代码 = 文本_代码;var文本_转码 = UPCE转码(文本_代码);var文本_代码 = String(UPC校验码(文本_转码));文本_代码 = "0" + 文本_原代码 + 文本_代码.substr(11, 1);var代码_数据数组 = UPCE条码生成(文本_代码);var新建_群组 = 当前文件.groupItems.add();编辑框_代码.text = 文本_代码;var画矩形 = 新建_群组.pathItems.rectangle(0, 0, 22.77 * mm, (条码_高度 + 3.733) * mm);画矩形.fillColor = 新白色;画矩形.strokeColor = NoColor;for (var a = 0; a < 代码_数据数组.length; a += 1) {var代码_分割数组 = 代码_数据数组 [a].split(",");var代码_Y1大小 = 代码_分割数组 [0];if ((a % 2) == 0) {var代码_X1位置 = (a / 2) * 2.31;}if (a == (代码_数据数组.length - 1)) {var代码_X1大小 = (Number(代码_分割数组 [1]) + 代码_X1位置) - 0.33;} else {var代码_X1大小 = Number(代码_分割数组 [1]) + 代码_X1位置 + 1.65;}var代码_X2大小 = 代码_分割数组 [2];var代码_Y2大小 = 代码_分割数组 [3];var第一位 = 新建_群组.pathItems.rectangle(代码_Y1大小 * mm, 代码_X1大小 * mm, 代码_X2大小 * mm, 代码_Y2大小 * mm);第一位.fillColor = 新黑色;第一位.strokeColor = NoColor;}for (var i = 0; i < 8; i += 1) {var代码_位置 = 0;var代码_Y移动 = 条码_高度 + 0.053;文字_新建 = 新建_群组.textFrames.add();文字_新建.contents = 文本_代码.charAt(i);文字_新建.textRange.characterAttributes.textFont = textFonts.getByName("OCRB10PitchBT-Regular");文字_新建.left = 0;文字_新建.top = 0;if (i == 0) {文字_新建.left = -0.935433070866142 - 0.467716535433071;}if (i == 0 || i == 7) {文字_新建.paragraphs[0].size = 9.28;} else {文字_新建.paragraphs[0].size = 12.38;}if (i > 0) {var代码_位置 = (6.54803149606299 * i) + 4.67716535433071;}if (i > 6) {var代码_位置 = (6.54803149606299 * i) + 13.5609448818898;}var代码_减去 = (文字_新建.width - 6.54803149606299) / 2;文字_新建.translate(代码_位置 - 代码_减去, -((代码_Y移动 * 72) / 25.4));}编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 5:文本_代码 = 文本_代码.substr(0, 28);文本_代码 = 文本_代码.replace(/[*]/ig, "");if (文本_代码 == "") {alert("输入错误,没有输入字符!", "错误提示", 2);return false;}文本_代码 = "*" + 文本_代码 + "*".toUpperCase();var文本_宽度比例 = 编辑框_宽度比例.text;文本_宽度比例 = 文本_宽度比例.replace(/[^0235.]/ig, "");if (文本_宽度比例 == "2" || 文本_宽度比例 == "2.5" || 文本_宽度比例 == "3" || 文本_宽度比例 == "2.0" || 文本_宽度比例 == "3.0") {} else {编辑框_宽度比例.text = "3";alert("输入错误,只能输入2、2.5、3的数字!", "错误提示", 2);return false;}for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE39.indexOf(文本_代码.charAt(i));if (文本_位置 == -1) {alert("输入错误,输入非法字符!", "错误提示", 2);return false;}}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 36.5 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;编辑框_代码.text = 文本_代码.substr(1, 文本_代码.length - 2);var代码_数据 = "";for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE39.indexOf(文本_代码.charAt(i));if (文本_位置 != -1) {if (i > 0) {代码_数据 += "0";}代码_数据 += 字符集_CODE代码 [文本_位置];}}var代码_分割数组 = 代码_数据.split("0");var代码_大小数组 = new Array();for (var a = 0; a < 代码_分割数组.length; a += 1) {if (代码_分割数组 [a] != "") {代码_大小数组.push(代码_分割数组 [a]);}}var矩形_X2大小 = (7.62 * 文本_代码.length) + 12.192;var矩形_Y2大小 = 36.79;var代码_X1位置 = 0;var代码_X1增加 = 0;var代码_X2位置 = 0;var代码_X3位置 = 0;var新建_群组 = 当前文件.groupItems.add();var画矩形 = 新建_群组.pathItems.rectangle(-(0.508 * mm), 6.35 * mm, 10 * mm, 10 * mm);画矩形.fillColor = 新白色;画矩形.strokeColor = NoColor;if (复选框_外框.value == true) {var画矩形上 = 新建_群组.pathItems.rectangle(-0.508 * mm, 6.35 * mm, 0.508 * mm, 1.016 * mm);画矩形上.fillColor = 新黑色;画矩形上.strokeColor = NoColor;var画矩形下 = 新建_群组.pathItems.rectangle(-(条码_高度 + 1.524) * mm, 6.35 * mm, 0.508 * mm, 1.016 * mm);画矩形下.fillColor = 新黑色;画矩形下.strokeColor = NoColor;var代码_Y1大小 = -1.524;var代码_Y移动 = 条码_高度 + 2.911;} else {var代码_Y1大小 = -0.508;var代码_Y移动 = 条码_高度 + 0.879;}if (文本_宽度比例 == "2" || 文本_宽度比例 == "2.0") {文本_宽度比例 = 0.508;文本_宽度比例增加 = 0;}if (文本_宽度比例 == "2.5") {文本_宽度比例 = 0.635;文本_宽度比例增加 = 0.254;}if (文本_宽度比例 == "3" || 文本_宽度比例 == "3.0") {文本_宽度比例 = 0.762;文本_宽度比例增加 = 0.508;}for (var i = 0; i < 代码_大小数组.length; i += 1) {var代码_X1位置 = 代码_数据.indexOf(代码_大小数组 [i], 代码_X1位置);代码_X2位置 = 代码_X1位置 + 代码_大小数组 [i].length;代码_X3位置 = 代码_数据.indexOf(代码_大小数组 [i + 1], 代码_X2位置);代码_X3位置 -= 代码_X2位置;if (代码_大小数组 [i].length > 1) {var代码_X1大小 = (0.508 * 代码_X1位置) + 代码_X1增加;var代码_X2大小 = 文本_宽度比例 * 代码_大小数组 [i].length;代码_X1增加 += 文本_宽度比例增加;} else {var代码_X1大小 = (0.508 * 代码_X1位置) + 代码_X1增加;var代码_X2大小 = 0.508 * 代码_大小数组 [i].length;}if (代码_X3位置 > 1) {代码_X1增加 += 文本_宽度比例增加;}var代码_Y2大小 = 条码_高度;代码_X1大小 += 6.35;代码_X1位置 += 代码_大小数组 [i].length;var第一位 = 新建_群组.pathItems.rectangle(代码_Y1大小 * mm, 代码_X1大小 * mm, 代码_X2大小 * mm, 代码_Y2大小 * mm);第一位.fillColor = 新黑色;第一位.strokeColor = NoColor;}for (var i = 1; i < 文本_代码.length - 1; i += 1) {var代码_位置 = ((7.31 + (3.56 * (i - 1))) * 72) / 25.4;文字_新建 = 新建_群组.textFrames.add();文字_新建.contents = 文本_代码.charAt(i);文字_新建.textRange.characterAttributes.size = 7.7;文字_新建.textRange.characterAttributes.textFont = textFonts.getByName("OCRB10PitchBT-Regular");文字_新建.left = 0;文字_新建.top = 0;文字_新建.translate(代码_位置, -((代码_Y移动 * 72) / 25.4));}画矩形_长度 = 新建_群组.width;画矩形.width = 新建_群组.width + (12.7 * mm);if (复选框_外框.value == true) {画矩形.height = (条码_高度 + 6.356) * mm;画矩形.left = 0;画矩形.top = 0;画矩形上.width = 画矩形_长度;画矩形下.width = 画矩形_长度;} else {画矩形.height = (条码_高度 + 4.324) * mm;画矩形.left = 0;画矩形.top = 0;}编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 6:文本_代码 = 文本_代码.substr(0, 28);if (文本_代码 == "") {alert("输入错误,没有输入字符!", "错误提示", 2);return false;}for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE93扩展.indexOf(文本_代码.charAt(i));if (文本_位置 == -1) {alert("输入错误,输入非法字符!", "错误提示", 2);return false;}}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 36.5 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;编辑框_代码.text = 文本_代码;var文本_代码扩展 = "";for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE93扩展.indexOf(文本_代码.charAt(i));if (文本_位置 != -1) {文本_代码扩展 += 字符集_CODE93扩展 [文本_位置];}}文本_代码 = 文本_代码扩展;var文本_双校验码 = CODE93校验码(文本_代码);var文本_奇数总合 = 文本_双校验码.split(",")[0];var文本_偶数总合 = 文本_双校验码.split(",")[1];var代码_数据 = "";代码_数据 += 字符集_CODE93代码 [47];for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE93.indexOf(文本_代码.charAt(i));if (文本_位置 != -1) {代码_数据 += 字符集_CODE93代码 [文本_位置];}}代码_数据 += 字符集_CODE93代码 [文本_奇数总合];代码_数据 += 字符集_CODE93代码 [文本_偶数总合];代码_数据 += 字符集_CODE93代码 [48];var代码_分割数组 = 代码_数据.split("0");var代码_大小数组 = new Array();for (var a = 0; a < 代码_分割数组.length; a += 1) {if (代码_分割数组 [a] != "") {代码_大小数组.push(代码_分割数组 [a]);}}var矩形_X2大小 = (7.62 * 文本_代码.length) + 12.192;var矩形_Y2大小 = 36.79;var代码_X1位置 = 0;var代码_X1增加 = 0;var代码_X2位置 = 0;var代码_X3位置 = 0;var新建_群组 = 当前文件.groupItems.add();var画矩形 = 新建_群组.pathItems.rectangle(-(0.508 * mm), 6.35 * mm, 10 * mm, 10 * mm);画矩形.fillColor = 新白色;画矩形.strokeColor = NoColor;for (var i = 0; i < 代码_大小数组.length; i += 1) {var代码_X1位置 = 代码_数据.indexOf(代码_大小数组 [i], 代码_X1位置);代码_X2位置 = 代码_X1位置 + 代码_大小数组 [i].length;代码_X3位置 = 代码_数据.indexOf(代码_大小数组 [i + 1], 代码_X2位置);代码_X3位置 -= 代码_X2位置;var代码_X1大小 = (0.508 * 代码_X1位置) + 代码_X1增加;var代码_X2大小 = 0.508 * 代码_大小数组 [i].length;var代码_Y1大小 = -0.508;var代码_Y2大小 = 条码_高度;代码_X1大小 += 6.35;代码_X1位置 += 代码_大小数组 [i].length;var第一位 = 新建_群组.pathItems.rectangle(代码_Y1大小 * mm, 代码_X1大小 * mm, 代码_X2大小 * mm, 代码_Y2大小 * mm);第一位.fillColor = 新黑色;第一位.strokeColor = NoColor;}文本_代码 = 编辑框_代码.text;文本_代码 = 文本_代码.replace(/[^ -~]/ig, "?");for (var i = 1; i < 文本_代码.length + 1; i += 1) {var代码_位置 = ((7.31 + (3.56 * (i - 1))) * 72) / 25.4;var代码_Y移动 = 条码_高度 + 0.879;文字_新建 = 新建_群组.textFrames.add();文字_新建.contents = 文本_代码.charAt(i - 1);文字_新建.textRange.characterAttributes.size = 7.7;文字_新建.textRange.characterAttributes.textFont = textFonts.getByName("OCRB10PitchBT-Regular");文字_新建.left = 0;文字_新建.top = 0;文字_新建.translate(代码_位置, -((代码_Y移动 * 72) / 25.4));}画矩形.width = 新建_群组.width + (12.7 * mm);画矩形.height = (条码_高度 + 4.324) * mm;画矩形.left = 0;画矩形.top = 0;编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 7:文本_代码 = 文本_代码.substr(0, 70);if (文本_代码 == "") {alert("输入错误,没有输入字符!", "错误提示", 2);return false;}for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));if (文本_位置 == -1) {alert("输入错误,输入非法字符!", "错误提示", 2);return false;}}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 31.8 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;编辑框_代码.text = 文本_代码;var代码_数据 = Code128条码生成(文本_代码);CODE128条码画出(文本_代码, 代码_数据);编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 8:文本_代码 = 文本_代码.substr(0, 70);if (文本_代码 == "") {alert("输入错误,没有输入字符!", "错误提示", 2);return false;}for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));if (文本_位置 == -1) {alert("输入错误,输入非法字符!", "错误提示", 2);return false;}}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 31.8 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;编辑框_代码.text = 文本_代码;var代码_类型 = "A";var代码_数据 = Code128ABC条码生成(文本_代码, 代码_类型);CODE128条码画出(文本_代码, 代码_数据);编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 9:文本_代码 = 文本_代码.substr(0, 70);if (文本_代码 == "") {alert("输入错误,没有输入字符!", "错误提示", 2);return false;}for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));if (文本_位置 == -1) {alert("输入错误,输入非法字符!", "错误提示", 2);return false;}}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 31.8 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;编辑框_代码.text = 文本_代码;var代码_类型 = "B";var代码_数据 = Code128ABC条码生成(文本_代码, 代码_类型);CODE128条码画出(文本_代码, 代码_数据);编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 10:文本_代码 = 文本_代码.substr(0, 70);文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码.length <= 3) {alert("输入错误,数字输入大于3位!", "错误提示", 2);return false;}if ((文本_代码.length % 2) != 0) {alert("输入错误,输入的数字必须是偶数!", "错误提示", 2);return false;}for (var i = 0; i < 文本_代码.length; i += 1) {var文本_位置 = 字符_CODE128.indexOf(文本_代码.charAt(i));if (文本_位置 == -1) {alert("输入错误,输入非法字符!", "错误提示", 2);return false;}}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 31.8 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;编辑框_代码.text = 文本_代码;var代码_类型 = "C";var代码_数据 = Code128ABC条码生成(文本_代码, 代码_类型);CODE128条码画出(文本_代码, 代码_数据);编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 11:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");var文本_宽度比例 = 编辑框_宽度比例.text;文本_宽度比例 = 文本_宽度比例.replace(/[^0235.]/ig, "");if (文本_宽度比例 == "2" || 文本_宽度比例 == "2.5" || 文本_宽度比例 == "3" || 文本_宽度比例 == "2.0" || 文本_宽度比例 == "3.0") {} else {编辑框_宽度比例.text = "3";alert("输入错误,只能输入2、2.5、3的数字!", "错误提示", 2);return false;}if (文本_代码.length <= 12) {alert("输入错误,数字输入小于13位!", "错误提示", 2);return false;}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 10.287 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;文本_代码 = 文本_代码.substr(0, 13);var文本_代码 = String(ITF校验码(文本_代码));var新建_群组 = 当前文件.groupItems.add();编辑框_代码.text = 文本_代码;var代码_数据 = "1010";for (var i = 0; i < 文本_代码.length / 2; i += 1) {var文本_奇数 = 文本_代码.charAt(2 * i);var文本_偶数 = 文本_代码.charAt((2 * i) + 1);for (var a = 0; a < 5; a += 1) {代码_数据 += "1";if (字符集_ITF前缀 [文本_奇数].charAt(a) == "1") {代码_数据 += "1"}代码_数据 += "0";if (字符集_ITF前缀 [文本_偶数].charAt(a) == "1") {代码_数据 += "0"}}}代码_数据 += "1101";var代码_分割数组 = 代码_数据.split("0");var代码_大小数组 = new Array();for (var a = 0; a < 代码_分割数组.length; a += 1) {if (代码_分割数组 [a] != "") {代码_大小数组.push(代码_分割数组 [a]);}}var代码_X1位置 = 0;var代码_X1增加 = 0;var代码_X2位置 = 0;var代码_X3位置 = 0;var画矩形 = 新建_群组.pathItems.rectangle(0, 6.35 * mm, 0.508 * mm, (条码_高度 + 6.356) * mm);画矩形.fillColor = 新白色;画矩形.strokeColor = NoColor;var画矩形上 = 新建_群组.pathItems.rectangle(-0.508 * mm, 6.35 * mm, 0.508 * mm, 1.016 * mm);画矩形上.fillColor = 新黑色;画矩形上.strokeColor = NoColor;var画矩形下 = 新建_群组.pathItems.rectangle(-(条码_高度 + 1.524) * mm, 6.35 * mm, 0.508 * mm, 1.016 * mm);画矩形下.fillColor = 新黑色;画矩形下.strokeColor = NoColor;if (文本_宽度比例 == "2" || 文本_宽度比例 == "2.0") {文本_宽度比例 = 0.508;文本_宽度比例增加 = 0;}if (文本_宽度比例 == "2.5") {文本_宽度比例 = 0.635;文本_宽度比例增加 = 0.254;}if (文本_宽度比例 == "3" || 文本_宽度比例 == "3.0") {文本_宽度比例 = 0.762;文本_宽度比例增加 = 0.508;}for (var i = 0; i < 代码_大小数组.length; i += 1) {var代码_X1位置 = 代码_数据.indexOf(代码_大小数组 [i], 代码_X1位置);代码_X2位置 = 代码_X1位置 + 代码_大小数组 [i].length;代码_X3位置 = 代码_数据.indexOf(代码_大小数组 [i + 1], 代码_X2位置);代码_X3位置 -= 代码_X2位置;if (代码_大小数组 [i].length > 1) {var代码_X1大小 = (0.508 * 代码_X1位置) + 代码_X1增加;var代码_X2大小 = 文本_宽度比例 * 代码_大小数组 [i].length;代码_X1增加 += 文本_宽度比例增加;} else {var代码_X1大小 = (0.508 * 代码_X1位置) + 代码_X1增加;var代码_X2大小 = 0.508 * 代码_大小数组 [i].length;}if (代码_X3位置 > 1) {代码_X1增加 += 文本_宽度比例增加;}var代码_Y1大小 = -1.524;var代码_Y2大小 = 条码_高度;代码_X1大小 += 6.35;代码_X1位置 += 代码_大小数组 [i].length;var第一位 = 新建_群组.pathItems.rectangle(代码_Y1大小 * mm, 代码_X1大小 * mm, 代码_X2大小 * mm, 代码_Y2大小 * mm);第一位.fillColor = 新黑色;第一位.strokeColor = NoColor;}for (var i = 0; i < 文本_代码.length; i += 1) {var代码_位置 = ((7.31 + (3.56 * i)) * 72) / 25.4;var代码_Y移动 = 条码_高度 + 2.911;文字_新建 = 新建_群组.textFrames.add();文字_新建.contents = 文本_代码.charAt(i);文字_新建.textRange.characterAttributes.size = 7.7;文字_新建.textRange.characterAttributes.textFont = textFonts.getByName("OCRB10PitchBT-Regular");文字_新建.left = 0;文字_新建.top = 0;文字_新建.translate(代码_位置, -((代码_Y移动 * 72) / 25.4));}画矩形_长度 = 新建_群组.width;画矩形.width = 新建_群组.width + (12.7 * mm);画矩形.height = (条码_高度 + 6.356) * mm;画矩形.left = 0;画矩形.top = 0;画矩形上.width = 画矩形_长度;画矩形下.width = 画矩形_长度;编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;case 12:文本_代码 = 文本_代码.replace(/-/ig, "");文本_代码 = 文本_代码.replace(/\s/g, "");文本_代码 = 文本_代码.replace(/[^0-9]/ig, "");if (文本_代码 == "") {alert("输入错误,没有输入字符!", "错误提示", 2);return false;}var文本_宽度比例 = 编辑框_宽度比例.text;文本_宽度比例 = 文本_宽度比例.replace(/[^0235.]/ig, "");if (文本_宽度比例 == "2" || 文本_宽度比例 == "2.5" || 文本_宽度比例 == "3" || 文本_宽度比例 == "2.0" || 文本_宽度比例 == "3.0") {} else {编辑框_宽度比例.text = "3";alert("输入错误,只能输入2、2.5、3的数字!", "错误提示", 2);return false;}if (文本_代码.length > 50) {alert("输入错误,数字输入最大50位!", "错误提示", 2);return false;}if ((文本_代码.length % 2) != 0) {文本_代码 = "0" + 文本_代码;}if (String(条码_原高度 / 2) == "NaN") {编辑框_高度.text = "0mm";alert("输入错误,只能输入数字!", "错误提示", 2);return false;}if (条码_原高度 > 50 || 条码_原高度 < 5) {条码_原高度 = 35 * 条码_比例;}var条码_高度 = 条码_原高度 / 条码_比例;编辑框_高度.text = 条码_高度;var新建_群组 = 当前文件.groupItems.add();编辑框_代码.text = 文本_代码;var代码_数据 = "1010";for (var i = 0; i < 文本_代码.length / 2; i += 1) {var文本_奇数 = 文本_代码.charAt(2 * i);var文本_偶数 = 文本_代码.charAt((2 * i) + 1);for (var a = 0; a < 5; a += 1) {代码_数据 += "1";if (字符集_ITF前缀 [文本_奇数].charAt(a) == "1") {代码_数据 += "1"}代码_数据 += "0";if (字符集_ITF前缀 [文本_偶数].charAt(a) == "1") {代码_数据 += "0"}}}代码_数据 += "1101";var代码_分割数组 = 代码_数据.split("0");var代码_大小数组 = new Array();for (var a = 0; a < 代码_分割数组.length; a += 1) {if (代码_分割数组 [a] != "") {代码_大小数组.push(代码_分割数组 [a]);}}var代码_X1位置 = 0;var代码_X1增加 = 0;var代码_X2位置 = 0;var代码_X3位置 = 0;var画矩形 = 新建_群组.pathItems.rectangle(0, 6.35 * mm, 0.508 * mm, (条码_高度 + 6.356) * mm);画矩形.fillColor = 新白色;画矩形.strokeColor = NoColor;if (复选框_外框.value == true) {var画矩形上 = 新建_群组.pathItems.rectangle(-0.508 * mm, 6.35 * mm, 0.508 * mm, 1.016 * mm);画矩形上.fillColor = 新黑色;画矩形上.strokeColor = NoColor;var画矩形下 = 新建_群组.pathItems.rectangle(-(条码_高度 + 1.524) * mm, 6.35 * mm, 0.508 * mm, 1.016 * mm);画矩形下.fillColor = 新黑色;画矩形下.strokeColor = NoColor;var代码_Y1大小 = -1.524;var代码_Y移动 = 条码_高度 + 2.911;} else {var代码_Y1大小 = -0.508;var代码_Y移动 = 条码_高度 + 0.879;}if (文本_宽度比例 == "2" || 文本_宽度比例 == "2.0") {文本_宽度比例 = 0.508;文本_宽度比例增加 = 0;}if (文本_宽度比例 == "2.5") {文本_宽度比例 = 0.635;文本_宽度比例增加 = 0.254;}if (文本_宽度比例 == "3" || 文本_宽度比例 == "3.0") {文本_宽度比例 = 0.762;文本_宽度比例增加 = 0.508;}for (var i = 0; i < 代码_大小数组.length; i += 1) {var代码_X1位置 = 代码_数据.indexOf(代码_大小数组 [i], 代码_X1位置);代码_X2位置 = 代码_X1位置 + 代码_大小数组 [i].length;代码_X3位置 = 代码_数据.indexOf(代码_大小数组 [i + 1], 代码_X2位置);代码_X3位置 -= 代码_X2位置;if (代码_大小数组 [i].length > 1) {var代码_X1大小 = (0.508 * 代码_X1位置) + 代码_X1增加;var代码_X2大小 = 文本_宽度比例 * 代码_大小数组 [i].length;代码_X1增加 += 文本_宽度比例增加;} else {var代码_X1大小 = (0.508 * 代码_X1位置) + 代码_X1增加;var代码_X2大小 = 0.508 * 代码_大小数组 [i].length;}if (代码_X3位置 > 1) {代码_X1增加 += 文本_宽度比例增加;}var代码_Y2大小 = 条码_高度;代码_X1大小 += 6.35;代码_X1位置 += 代码_大小数组 [i].length;var第一位 = 新建_群组.pathItems.rectangle(代码_Y1大小 * mm, 代码_X1大小 * mm, 代码_X2大小 * mm, 代码_Y2大小 * mm);第一位.fillColor = 新黑色;第一位.strokeColor = NoColor;}for (var i = 0; i < 文本_代码.length; i += 1) {var代码_位置 = ((7.31 + (3.56 * i)) * 72) / 25.4;文字_新建 = 新建_群组.textFrames.add();文字_新建.contents = 文本_代码.charAt(i);文字_新建.textRange.characterAttributes.size = 7.7;文字_新建.textRange.characterAttributes.textFont = textFonts.getByName("OCRB10PitchBT-Regular");文字_新建.left = 0;文字_新建.top = 0;文字_新建.translate(代码_位置, -((代码_Y移动 * 72) / 25.4));}画矩形_长度 = 新建_群组.width;画矩形.width = 新建_群组.width + (12.7 * mm);if (复选框_外框.value == true) {画矩形.height = (条码_高度 + 6.356) * mm;画矩形.left = 0;画矩形.top = 0;画矩形上.width = 画矩形_长度;画矩形下.width = 画矩形_长度;} else {画矩形.height = (条码_高度 + 4.324) * mm;画矩形.left = 0;画矩形.top = 0;}编辑框_高度.text = 条码_原高度 + "mm";activeDocument.groupItems[0].width = activeDocument.groupItems[0].width * 条码_比例;activeDocument.groupItems[0].height = activeDocument.groupItems[0].height * 条码_比例;break;}if (代码_旋转 == true) {activeDocument.groupItems[0].rotate(-90);}activeDocument.groupItems[0].left = 直线_x位置;activeDocument.groupItems[0].top = 直线_y位置;fileOut = new File(安装程序_运行_路径 + "\\条形码配置.txt");fileOut.lineFeed = "Windows";fileOut.open("w", "TEXT", "????");fileOut.write(编辑框_代码.text + "," + 组合框_类型.selection.index + "," + 编辑框_扩大比例.text + "," + 编辑框_高度.text + "," + 编辑框_宽度比例.text + "," + 编辑框_宽度比例.enabled + "," + 复选框_外框.value + "," + 复选框_外框.enabled + "," + 复选框_关闭.value);fileOut.close();if (复选框_关闭.value == true) {主窗口.close();}
};
主窗口.center();
主窗口.show();

2.作者答疑


  代码长度过长,如需全部项目,请留言。

提示: 作者知了-联系方式1
提示: 作者知了-联系方式2

illustrator插件--常用功能开发--条码生成--js脚本开发--AI插件相关推荐

  1. illustrator插件-常用功能模块-测量路径长度-js脚本开发-AI插件

    文章目录 1.算法程序 2.作者答疑 1.算法程序   illustrator是矢量编辑软件,画板是绘制处理的重要容器,在印刷方面的一个重要功能就是测量路径长度,开发一个测量路径长度功能,以下功能仅用 ...

  2. illustrator插件--常用功能开发--色标生成器--js脚本开发--AI插件

      illustrator是矢量编辑软件,画板是绘制处理的重要容器,在印刷方面的一个重要功能就是色标生成器,开发一个色标生成器功能,以下功能仅用于学习交流,请勿用于非法用途和商业用途,源代码如下所示: ...

  3. illustrator插件--常用功能开发--绘制手提袋--js脚本开发--AI插件

      illustrator是矢量编辑软件,画板是绘制处理的重要容器,在印刷方面的一个重要功能就是绘制手提袋,开发一个绘制手提袋功能,以下功能仅用于学习交流,请勿用于非法用途和商业用途,源代码如下所示: ...

  4. illustrator插件-画板功能开发-插入页码-js脚本开发-ai插件

    文章目录 1.算法程序 2.文本转执行 3.作者答疑 1.算法程序   illustrator是矢量编辑软件,画板是绘制处理的重要容器,开发一个插入页码功能,源代码如下所示: if (app.docu ...

  5. illustrator插件-拼版功能开发-阵列复制-js脚本开发-ai插件

    文章目录 1.算法程序 2.作者答疑 1.算法程序   illustrator是矢量编辑软件,画板是绘制处理的重要容器,在印刷方面的一个重要功能就是拼版,开发一个阵列复制功能,以下功能仅用于学习交流, ...

  6. AfterEffect(AE)插件-常规功能开发-创建面板-js脚本开发

    文章目录 1.算法程序 2.作者答疑 1.算法程序   AfterEffect(AE)插件是特效制作软件,本文向大家介绍如何开发插件中的子模块创建面板.源代码如下所示: {function DemoP ...

  7. AfterEffect插件--常规功能开发--扭曲效果--js脚本开发--AE插件

    文章目录 1.扭曲效果功能 2.作者答疑 1.扭曲效果功能   AfterEffect(AE)插件是Adobe公司开发的特效制作软件,稳定快速的功能和特效,在视频制作领域使用非常广泛,本文向大家介绍如 ...

  8. InDesign插件--常规功能开发--版面调整--js脚本开发--ID插件

    文章目录 1.算法程序 2.作者答疑 1.算法程序   Adobe InDesign是Adobe公司的一个桌面出版 (DTP) 的应用程序,主要用于各种印刷品的排版编辑.InDesign可以将文档直接 ...

  9. html轮播图循环效果,TremulaJS-跨设备多功能的无限循环js轮播图插件

    TremulaJS是一款非常酷的跨设备多功能的无限循环js轮播图插件.TremulaJS是一个客户端javascript UI组件,它基于贝兹曲线和物理动量效应制作各种效果,可以制作无限循环的图片流, ...

  10. Auto.js脚本开发环境搭建

    1. Auto.js软件安装及简单使用 直接将APK发送到安卓手机上进行安装,电脑端的模拟器上直接拖进去就可以安装,安装时不光要安装Auto.js的APK,还要安装打包插件的APK,Auto.js的A ...

最新文章

  1. 新型智能电视攻击,9成国外设备或受影响
  2. QIIME 2教程. 04人体微生物组分析Moving Pictures(2020.11)
  3. 计算机专业英语外文翻译,计算机专业英语JAVA介绍外文翻译[共28页]
  4. DataTable筛选符合条件的DataRow
  5. Fun Chat 饭聊手机软件
  6. widget模式弄不出来_【春天文化】互联网时代的教育模式培养精英
  7. 移植Linux3.4.2版本内核到mini2440
  8. oracle ldap 配置,Ubuntu安装OpenLDAP之配置LDAP
  9. mysql 查询和修改组合_## 超详细MySQL常用语句,增删查改
  10. 1 python简介与安装
  11. springboot-day01-引入基础
  12. 成功数据恢复一例MYSQL数据库记录恶意删除
  13. 如何在Windows平台上基于github搭建个人博客平台
  14. [渝粤教育] 九江学院 妇产科护理学 参考 资料
  15. 十年比肩?看国产数据库如何突出重围!| 新程序员
  16. 7-7 选民投票 (20分)(不区分大小写投票)
  17. c语言 类型、运算符、表达式
  18. 6、GitHub 操作
  19. 【英语阅读】纽约时报 | 台湾美食为什么那么“Q”?
  20. 如何提交form表单嵌套(提交表单外的数据方法 )

热门文章

  1. wps android 接口,Android调用WPS接口打开office类型文件
  2. 数据挖掘10大算法及详解
  3. Linux定时任务-定时锁屏
  4. dhl:搜狗五笔输入法
  5. 我接触到的几款SQLite管理工具
  6. SQL分页查询,SQL的LIMIT语句用法,SQL如何实现分页查询,SpringBoot实现分页查询。
  7. 金蝶云php webapi,K/3 Cloud Web API销售出库单PHP完整示例【分享】
  8. 易我电脑迁移 2022
  9. 工大瑞普虚拟思科实验室full(U7.3)环境配置方法
  10. Android大牛博客集