土品 发表于 2021-11-4 17:12:07

那大佬帮忙把这个脚本里面的微软黑字体改成Arial字体

///////////////////////////////////////////////
doc = app.activeDocument;
var u=28.34646
theSelect = doc.selection;
for (i=0;i<theSelect.length;i++){ //批处理多个选择物体
x=theSelect.left;
y=theSelect.top;
w=theSelect.width;
h=theSelect.height;
s=4;//标尺距离物体边沿宽度
asize=5;//箭头大小
if(h<50 || w<50){asize=6;}//简单的自适应,太小的物体用小箭头
tsize=6; //标尺字体大小
redColor = new CMYKColor();//标尺用红色
redColor.black = 00;
redColor.cyan = 0;
redColor.magenta =100;
redColor.yellow = 100;
var g1 = doc.groupItems.add();//将标尺群组
var line1=g1.pathItems.add(); //画高度标尺
line1.setEntirePath( new Array(
new Array(x-s, y),
new Array(x-s, y-h),
)
) ;
line1.strokeColor= redColor;
var line1=g1.pathItems.add();
line1.setEntirePath( new Array(
new Array(x-s-s/2, y),
new Array(x-s/2, y),
)
) ;
line1.strokeColor= redColor;
var line1=g1.pathItems.add();
line1.setEntirePath( new Array(
new Array(x-s-s/2, y-h),
new Array(x-s/2, y-h),
)
) ;
line1.strokeColor= redColor;
//画箭头
var ar1=g1.pathItems.add();
ar1.setEntirePath( new Array(
new Array(x-s, y),
new Array(x-s-asize/2,y-asize),
new Array(x-s+asize/2,y-asize),
)
) ;
ar1.strokeColor= NoColor;
ar1.fillColor= redColor;
ar1.closed=true;
var ar1=g1.pathItems.add();
ar1.setEntirePath( new Array(
new Array(x-s, y-h),
new Array(x-s-asize/2,y-h+asize),
new Array(x-s+asize/2,y-h+asize),
)
) ;

ar1.strokeColor= NoColor;
ar1.fillColor= redColor;
ar1.closed=true;
var t1 = g1.textFrames.add();
t1.contents = (h/2.834645).toFixed(2)+" mm";
t1.textRange.characterAttributes.size=tsize;
t1.textRange.characterAttributes.fillColor= redColor;
t1.textRange.textFont=app.textFonts;//字型:微软雅黑
t1.left = x-t1.width;
t1.top = y-h/2+t1.height/2;
t1.rotate(90); //文字旋转90度

var line2=g1.pathItems.add(); //画长度标尺
line2.setEntirePath( new Array(
new Array(x, y-h-s),
new Array(x+w, y-h-s),
)
) ;
line2.strokeColor= redColor;
var line2=g1.pathItems.add();
line2.setEntirePath( new Array(
new Array(x, y-h-s-s/2),
new Array(x, y-h-s/2),
)
) ;
line2.strokeColor= redColor;
var line2=g1.pathItems.add();
line2.setEntirePath( new Array(
new Array(x+w, y-h-s-s/2),
new Array(x+w, y-h-s/2),
)
) ;
line2.strokeColor= redColor;
//画箭头
var ar1=g1.pathItems.add();
ar1.setEntirePath( new Array(
new Array(x,y-h-s),
new Array(x+asize,y-h-s-asize/2),
new Array(x+asize,y-h-s+asize/2),
)
) ;
ar1.strokeColor= NoColor;
ar1.fillColor= redColor;
ar1.closed=true;
var ar1=g1.pathItems.add();
ar1.setEntirePath( new Array(
new Array(x+w,y-h-s),
new Array(x+w-asize,y-h-s-asize/2),
new Array(x+w-asize,y-h-s+asize/2),
)
) ;
ar1.strokeColor= NoColor;
ar1.fillColor= redColor;
ar1.closed=true;

var t2 = g1.textFrames.add();
t2.contents = (w/2.834645).toFixed(2)+" mm";
t2.textRange.characterAttributes.size=tsize;
t2.textRange.characterAttributes.fillColor= redColor;
t2.textRange.textFont=app.textFonts; //字型:微软雅黑
t2.left = x+w/2-t2.width/2;
t2.top = y-h-s-s;
}
///////////////////////////////////////////////

song0985 发表于 2021-11-5 14:38:30


; //字型:微软雅黑
改成   
;//字型:常规体



jiangyu 发表于 2021-11-4 19:42:58

; //字型:微软雅黑   这里改成    应该就可以了

土品 发表于 2021-11-5 08:36:26

jiangyu 发表于 2021-11-4 19:42
; //字型:微软雅黑   这里改成    应该就可 ...

这样改过了还是不行

liuyp6699 发表于 2021-11-5 11:25:37

土品 发表于 2021-11-5 08:36
这样改过了还是不行

搜索【MicrosoftYaHei 】全部改了,目前看到两处

土品 发表于 2021-11-5 12:03:11

liuyp6699 发表于 2021-11-5 11:25
搜索【MicrosoftYaHei 】全部改了,目前看到两处

改了 脚本就不可以用了

edesign00 发表于 2021-11-5 13:26:08

可能ARIAL不支持中文字体的原因

土品 发表于 2021-11-5 16:23:05

edesign00 发表于 2021-11-5 13:26
可能ARIAL不支持中文字体的原因

理论上应该是可以的换成Arial字体的   我们不会弄 。 这得来位大神才搞得定

xj2020 发表于 2021-11-5 16:44:35

可以的只是据说国外开发的某源码那个大小已经和游戏的载量差不多了

wqian712 发表于 2021-11-6 12:02:21

本帖最后由 wqian712 于 2021-11-6 12:03 编辑


把我截图的这两处 换成"ArialMT"就可以了



至于为什么是这个字体名字,我也不知道,我是用js跑循环读取的
页: [1] 2
查看完整版本: 那大佬帮忙把这个脚本里面的微软黑字体改成Arial字体