| 
UID2积分8682帖子2905主题199论坛币13045 威望16 EP值2349 MP值15 阅读权限200注册时间2011-8-3在线时间2597 小时最后登录2024-8-28
 
   
 | 
| .gif) 努力了一下午, 貌似终于见到一丝曙光了... 
 不过, 大致的修正方向已经确定了.
 
 由于GDI与FreeType之前的差异性(尝试了所以字体大小定义方式, 也找不到一个对所有字体都适用的, 能让他们输出相同大小的字符的方法), 所以只能引入一个新的字体大小, 让TCC中设置的字体大小作为参照(不管是指定给GDI或是FT, 对应的为ASS普通文字与其他类型文字), 程序自动计算出一个字体大小给另一个字体引擎, 从而使两个引擎的结果相同.
 
 使用该解决方案应该能得到一个最理想的结果, 但会对以前的脚本(用到了像素字, Mask, tcas等非纯ASS普通文字特效)造成一定的兼容性问题, 好在修改起来应该会非常容易 --> 只需要修改 GetVal(val_FontSize) 为 GetVal(val_ftFontSize) 或 GetVal(val_gdiFontSize) 即可, GetVal(val_FontSize)仍然会保留, 其含义应该会等价于 GetVal(val_gdiFontSize) --> 也即ASS普通文字的大小定义.
 
 具体要看最终实现以及影响范围评估而定.
 
 -------------- 19:12 编辑 ----------------
 
 
 .gif) 惊奇的发现用目前这算法不会造成任何兼容性问题... XD 
 
 
 
 | 
 |