◆- Adobe插件与脚本区 主要讨论Adobe插件开发与软件脚本撰写

发表新主题 关闭主题
 
只看楼主 主题工具
旧 2023-02-24, 16:40     #1
Ellis.c Ellis.c 当前离线
正式会员
等级: 四袋长老
帅哥 级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时
 
Uid: 705440
注册日期: 2021-04-26, 09:44
帖子: 354
感谢: 53
21 个帖子获得 26 次感谢
现金: 345金币
资产: 397金币
声望: 10 Ellis.c 向着好的方向发展
Ellis.c Ellis.c 当前离线
正式会员
等级: 四袋长老
帅哥 级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时
 
Uid: 705440
注册日期: 2021-04-26, 09:44
帖子: 354
感谢: 53
21 个帖子获得 26 次感谢
现金: 345金币
资产: 397金币
声望: 10 Ellis.c 向着好的方向发展
默认 有替换字体脚本吗?   



我想打开文件后,点击脚本后将缺字体或者其他字体一键改成所需的字体(新宋体或者其他字体),不需要经过文字-查找替换选项,脚本能做到吗?谢谢

多文件时每次都要点两下再选字体,有时字体用多了,最近使用的字体都覆盖没了,又要往下拉拉拉
Ellis.c 当前离线  
旧 2023-02-25, 10:06   只看该作者   #2
zg2600 zg2600 当前离线
正式会员
等级: 三袋长老
级别:28 | 在线时长:913小时 | 升级还需:44小时级别:28 | 在线时长:913小时 | 升级还需:44小时级别:28 | 在线时长:913小时 | 升级还需:44小时级别:28 | 在线时长:913小时 | 升级还需:44小时
 
Uid: 694634
注册日期: 2020-09-05, 09:08
帖子: 121
感谢: 19
6 个帖子获得 6 次感谢
现金: 80金币
资产: 80金币
声望: 10 zg2600 向着好的方向发展
zg2600 zg2600 当前离线
正式会员
等级: 三袋长老
级别:28 | 在线时长:913小时 | 升级还需:44小时级别:28 | 在线时长:913小时 | 升级还需:44小时级别:28 | 在线时长:913小时 | 升级还需:44小时级别:28 | 在线时长:913小时 | 升级还需:44小时
 
Uid: 694634
注册日期: 2020-09-05, 09:08
帖子: 121
感谢: 19
6 个帖子获得 6 次感谢
现金: 80金币
资产: 80金币
声望: 10 zg2600 向着好的方向发展
默认

代码:
    for (var i = 0; i < text.length; i++) {
        //text[i].textRange.characterAttributes.size = 33;//设置字体大小
        var bl = text[i].textRange.characterAttributes.fillColor.blue
        var re = text[i].textRange.characterAttributes.fillColor.red
        var gr = text[i].textRange.characterAttributes.fillColor.green
        if (bl == re && re == gr && bl == gr && bl!=255) {
            text[i].textRange.characterAttributes.fillColor = newRGBColor;//设置字体颜色
        }
        
        if (bl == 21 && re == 35 && gr == 24) {
            text[i].textRange.characterAttributes.fillColor = newRGBColor;//设置字体颜色
        }
        var fontstyle = text[i].textRange.characterAttributes.textFont.style
        if (fontstyle.indexOf("talic") !== -1 || fontstyle.indexOf("blique") !== -1) { //倾斜体 
            //alert("包含倾斜")
            if (fontstyle.indexOf("Regular") !== -1 || fontstyle.indexOf("ight") !== -1) { //常规斜体  细斜体
                //alert("普通倾斜")
                text[i].textRange.characterAttributes.textFont = textFonts.getByName('Roboto-Italic')
            }
            else {
                //alert("中粗倾斜")
                text[i].textRange.characterAttributes.textFont = textFonts.getByName('Roboto-MediumItalic')
            }
        }

        if (fontstyle.indexOf("egular") !== -1 || fontstyle.indexOf("ight") !== -1 || fontstyle.indexOf("Thin") !== -1 || fontstyle.indexOf("L") !== -1) { //常规体  细体 统一变成常规体
            text[i].textRange.characterAttributes.textFont = textFonts.getByName('Roboto-Regular')
        }
        else {
            text[i].textRange.characterAttributes.textFont = textFonts.getByName('Roboto-Medium')
        }
        text[i].textRange.characterAttributes.horizontalScale = 100;//水平缩放
        text[i].textRange.characterAttributes.verticalScale = 100;//垂直缩放 
        //text[i].textRange.characterAttributes.kerningMethod = AutoKernType.OPTICAL;//设置为视觉
        text[i].textRange.characterAttributes.tracking = 0;//字距为0
        //text[i].textRange.characterAttributes.leading = text[i].textRange.characterAttributes.size * 1.2 //行距
        text[i].textRange.characterAttributes.baselineShift = 0;//基线偏移为0
    }
}
直接用的倒是没有,你自己研究下这个是能用的

此帖于 2023-02-25 10:11 被 zg2600 编辑. 原因: 补充内容
zg2600 当前离线  
旧 2023-02-28, 09:19   只看该作者   #3
Ellis.c Ellis.c 当前离线
正式会员
等级: 四袋长老
帅哥 级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时
 
Uid: 705440
注册日期: 2021-04-26, 09:44
帖子: 354
感谢: 53
21 个帖子获得 26 次感谢
现金: 345金币
资产: 397金币
声望: 10 Ellis.c 向着好的方向发展
Ellis.c Ellis.c 当前离线
正式会员
等级: 四袋长老
帅哥 级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时级别:45 | 在线时长:2272小时 | 升级还需:28小时
 
Uid: 705440
注册日期: 2021-04-26, 09:44
帖子: 354
感谢: 53
21 个帖子获得 26 次感谢
现金: 345金币
资产: 397金币
声望: 10 Ellis.c 向着好的方向发展
默认

引用:
作者: zg2600 查看帖子
for (var i = 0; i < text.length; i++) {
//text[i].textRange.characterAttributes.size = 33;//设置字体大小
var bl = text[i].textRange.characterAttributes.fillColor.blue
var re = text[i].textRange.characterAttributes.fillColor.red
var gr = text[i].textRange.characterAttributes...
好的,谢谢!
这是我找到的两种方法:
1.选中需要更改的字体才能生效,NSimSun字体可以自行改
var docRef = app.activeDocument;
for (var i=0; i<docRef.textFrames.length; i++) {
for (var j=0; j<docRef.textFrames[i].textSelection.length; j++) {
if (docRef.textFrames[i].textSelection.length>0) docRef.textFrames[i].textSelection[j].characterAttributes.textFont = app.textFonts.getByName('NSimSun');
}
}

2.不用选中,默认全文档字体改变,同样NSimSun字体可以自行改
if ( app.documents.length > 0 ) {
for ( i = 0; i< app.activeDocument.textFrames.length; i++) {
textArtRange = app.activeDocument.textFrames[i].textRange;
textArtRange.characterAttributes.textFont = app.textFonts.getByName('NSimSun');
}
}
Ellis.c 当前离线  
发表新主题 关闭主题


发帖规则
不可以发表主题
不可以回复帖子
不可以上传附件
不可以编辑自己的帖子

论坛启用 vB 代码
论坛启用 表情图标
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


律师声明:本站内容,均具有版权,未经书面授权,禁止转载,严禁镜像,违者承担一切后果!
论坛广告报价   广告联系及办理企业会员服务QQ:57880388 站务管理QQ:35529388


所有时间均为 +8, 现在的时间是 2025-01-04 15:06.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
 
Copyright © 2004-2022