复制所选内容的尺寸 如何选择剪切蒙版后的尺寸
// 获取当前文档和所选内容var doc = app.activeDocument;
var selection = doc.selection;
// 获取当前文档的单位
var originalUnits = doc.rulerUnits;
// 设置文档单位为像素
doc.rulerUnits = 0; // 0 表示像素
// 获取所选内容的边界框(包括描边宽度)
var bounds = getBounds(selection);
// 将边界框宽度和高度转换为毫米单位,并精确到第四位小数
var width = pixelsToUnits(bounds - bounds, "mm").toFixed(4);
var height = pixelsToUnits(bounds - bounds, "mm").toFixed(4);
// 将宽度和高度复制到剪贴板
var formattedWidth = width.toString().replace(/(\.\d+?)0+$/, "$1");
var formattedHeight = height.toString().replace(/(\.\d+?)0+$/, "$1");
var formattedWidth = formattedWidth.replace(" cm", "");
var formattedHeight = formattedHeight.replace(" cm", "");
var clipboardText = "宽度: " + formattedWidth + "\n\n" + "高度: " + formattedHeight;
copyTextToClipboard(clipboardText);
// 还原原始的文档单位
doc.rulerUnits = originalUnits;
// 获取所选内容的边界框(不包括描边宽度)
function getBounds(selection) {
var bounds = selection.geometricBounds;
for (var i = 1; i < selection.length; i++) {
var objBounds = selection.geometricBounds;
bounds = Math.min(bounds, objBounds);
bounds = Math.max(bounds, objBounds);
bounds = Math.max(bounds, objBounds);
bounds = Math.min(bounds, objBounds);
}
return bounds;
}
// 将像素值转换为指定单位的值
function pixelsToUnits(value, unit) {
var conversionFactor = 0.035277778; // 1 像素 = 0.035277778 厘米
return value * conversionFactor;
}
// 复制文本到剪贴板的函数
function copyTextToClipboard(text) {
try {
var textFile = new File(Folder.temp + "/clipboard.txt");
textFile.open("w");
textFile.write(text);
textFile.close();
textFile.execute();
} catch (e) {
alert("无法将文本复制到剪贴板。");
}
}
复制所选内容的尺寸 如何选择剪切蒙版后的尺寸,而不是包括选择蒙版内的尺寸
AI 脚本 ,请大佬们赐教,如何修改此脚本 ,使其能正确选择有剪切蒙版框后的尺寸
页:
[1]