gpt4 book ai didi

javascript - 区分同一文本层内的多种字体

转载 作者:行者123 更新时间:2023-11-28 06:47:20 25 4
gpt4 key购买 nike

我创建了一个非常基本的脚本,允许用户将所有文档(甚至图层集中)中的特定字体替换为另一种字体。

一个实践示例:我想将所有 Arial-Bold 替换为 Arial-Italic,但某些 TextLayers 在同一 Layer 内有 Arial-Bold 和 Arial-Regular,如何使脚本只更改 Arial-Bold TextLayer 的一部分而不是整个图层?

我当前使用的代码:

var inFont = prompt("write inFont","Write inFont");
var outFont = prompt("write outFont","Write outFont");

app.preferences.typeUnits = TypeUnits.PIXELS;
var doc = app.activeDocument;

function changeFonts(target){
var layers = target.layers;
for(var i=0;i<layers.length;i++){
if(layers[i].typename == "LayerSet"){
changeFonts(layers[i]);
} else {
if((layers[i].kind == LayerKind.TEXT) && (layers[i].textItem.font == inFont)) {
layers[i].textItem.font = outFont;
};
};
};
};

changeFonts(doc);

最佳答案

我假设您必须浏览文本并查看每个单独的字符。这是一篇讨论格式化特定字符范围的文章。 Formatting text ranges 。您可以使用类似的方法一次一个字符地循环文本,检查格式并根据需要进行更改。我想不出任何其他方法来解决这个问题。

关于javascript - 区分同一文本层内的多种字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33300110/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com