区分多个字体在同一文本图层
Distinguish multiple font inside same Text Layer
我已经创建了一个非常基本的脚本,允许用户将所有文档(甚至LayerSets)中的特定字体替换为另一个。
一个实践的例子:我想用Arial-Italic代替所有的Arial-Bold,但是一些TextLayers有Arial-Bold和Arial-Regular在同一层内,怎么能使脚本只改变TextLayer的Arial-Bold部分,而不是整个层?
我当前使用的代码:
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);
我认为您必须浏览文本并查看每个单独的字符。这是一篇讨论格式化特定字符范围的文章。格式化文本范围。您可以使用类似于这样的东西来一次一个字符地遍历文本,检查格式并在需要时进行更改。
相关文章:
- 更改图层中单个矢量特征的图标
- 谷歌地图热图图层点半径
- 谷歌地图-更改图层图标大小
- 如何通过ID获取图层对象
- CS5隐藏图层的速度非常慢
- 开放图层导出为 KML 并保留我的地图样式
- 传单问题:使折线的图层组不可单击
- 将图层添加到另一个图层
- 图层删除(图像);在 Kinetic.js 中不起作用
- HTML5 Canvas 的初学者,使用图层
- 如何在“控制缩放”下的“打开图层”上添加一些图像
- 无法让 jQuery floatThead 处理嵌入在选项卡式图层中的表
- OpenLayers:自动将 EPSG 4326 - 文本图层的坐标转换为地图的投影 (EPSG:900913)
- 底图参考图层(文本)忽略选择更改时的不透明度
- Photoshop 脚本 - 如何在一种历史记录状态下创建文本图层
- 区分多个字体在同一文本图层
- 添加和转换图层的图像和文本,如Photoshop fx
- Photoshop 脚本:更改文本图层的文本
- Javascript Photoshop:用于更改现有文本图层的文本颜色的语法
- 创建一个切换按钮,在图层打开和图层关闭时改变文本