小华同学 发表于 3 天前

Illustrator 2024 多个画板中所有的文字替换

Illustrator 2024 多个画板中所有的文字替换成微软雅黑字体,想做个一键就把所有文字替换了的便捷脚本(字体大小不变),不用弹出界面,直接改。下面的代码可以全选到,就是不能自动替换,哪位大神帮看看改改,谢谢额!

// 获取当前活动文档
var doc = app.activeDocument;

// 取消当前所有选中的对象
doc.selection = null;

// 遍历文档中的所有文本框架
for (var i = 0; i < doc.textFrames.length; i++) {
    var textFrame = doc.textFrames;
    // 选中当前文本框架
    textFrame.selected = true;
    // 遍历文本框架中的每个文本范围
    for (var j = 0; j < textFrame.textRanges.length; j++) {
      var textRange = textFrame.textRanges;
      // 保存原字号
      var originalSize = textRange.size;
      // 设置字体为微软雅黑
      textRange.font = "Microsoft YaHei";
      // 恢复原字号
      textRange.size = originalSize;
    }
}   

guise4543 发表于 3 天前

这个不错,可以用来试下好不好用。

andy9568 发表于 3 天前

这个需求...,一般会在什么场景下用到呢?不同的字体,间距,行距效果都不大一样,如果你是排好版后,批量换字体,结果难以现象......

雅黑字体感觉一直都是一个特殊的存在,字距太小(字跟字挨太近),所谓的字体平替的话,脑补结果是文本框变换不小

g4222 发表于 前天 10:29

size的上面还有一个属性characterAttributes

g4222 发表于 前天 10:33

字体要例遍历找到指定字体的序号,才能赋值。不能直接赋值字体名字

g4222 发表于 前天 10:37

其实用动作更简单些
页: [1]
查看完整版本: Illustrator 2024 多个画板中所有的文字替换