请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册
楼主: tonyhsie

ListAssFonts: 小工具,分析字幕使用的字型 (2019/1/30 更新)

该用户从未签到

0

主题

5

帖子

0

真·积分

新手上路

Rank: 1

积分
38
muveex 发表于 2019-3-23 13:03:40 | 显示全部楼层
tonyhsie 发表于 2019-3-22 20:31
有問題的字型移除掉就好了 你既然能裝上去,肯定也能移除掉吧

举个例子,我们这里上千台电脑都以Active Directory连在一起,一个人在一台电脑上存储数据以后,换一台电脑用相同的用户名密码登录,不需要任何手动操作就能把这些文件和设置从服务器上转移过来。一般用户没有管理员权限,也禁止执行或安装除现有程序和MS Store App以外的所有程序,但能做的事情很多,一般足够用了。如果我们是一个设计公司,那可能会希望设计师们能自己有权限来自行安装卸载不同的字体。
对一般程序而言系统如何使用字体是透明的;对一般程序而言,获取字体列表比较好的实现方式不是枚举注册表而是调用API,比如.NET 里的 InstalledFontCollection 对象。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    郁闷
    2016-12-31 01:33
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    12

    主题

    291

    帖子

    446

    真·积分

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    373542
    tonyhsie  楼主| 发表于 2019-3-23 14:05:50 | 显示全部楼层
    举个例子,我们这里上千台电脑都以Active Directory连在一起,一个人在一台电脑上存储数据以后,换一台电脑用相同的用户名密码登录,不需要任何手动操作就能把这些文件和设置从服务器上转移过来。一般用户没有管理员权限,也禁止执行或安装除现有程序和MS Store App以外的所有程序,但能做的事情很多,一般足够用了。如果我们是一个设计公司,那可能会希望设计师们能自己有权限来自行安装卸载不同的字体。

    其實我並不是要你 "想像出一種可能會用到 user font 的場合",而是想知道 "實際確實會用到 user font 的情況是怎麼樣的"

    以你舉的例子來說,假設有這種設計師好了,在 Win 10 1809 之前他們沒辦法作業嗎? 不可能吧
    所以代表 user font 對他們來說也並非一個必要功能,不是嗎?


    就我看來,ListAssFonts 面向的用戶,或者說一般用戶,需要使用 user font 功能的機會並不是很高

    畢竟 LAF 也是兩年多前就有的東西了,當時沒有 user font 這玩意也沒什麼問題
    現在雖然有這玩意了,但我看不出一般用戶把字型安裝成 user font 而非 system font 來用,能帶來什麼好處?

    对一般程序而言系统如何使用字体是透明的;对一般程序而言,获取字体列表比较好的实现方式不是枚举注册表而是调用API,比如.NET 里的 InstalledFontCollection 对象。


    InstalledFontCollection 有不少漏網字型,並不是尋找系統上所有字型的一個完美解答


    另外,你可以試看看 Aegisub 能不能找到 user font 吧

    你可能以為 user font 應該能直接無痛被所有程式支援,而現實卻不是那麼美好
    那難道你要一個個去請不支援 user font 的程式作者去改版來支援 user font,還是選擇自己照舊使用 system font?


    這問題我當初升級到 1809 時就考慮過了,我選了後者,所以 LAF 支援 user font 的計畫也就擱置了,畢竟 user font 的必要性真的不大

    http://bbs.vcb-s.com/forum.php?m ... 25&fromuid=8179


    另外有個問題,如果 user 沒有管理員權限,無法自行安裝字型

    那他有權限把系統字型 copy 出來嗎?  這我不太清楚

    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    5

    帖子

    0

    真·积分

    新手上路

    Rank: 1

    积分
    38
    muveex 发表于 2019-3-24 02:04:54 | 显示全部楼层
    本帖最后由 muveex 于 2019-3-24 04:39 编辑
    tonyhsie 发表于 2019-3-23 14:05
    其實我並不是要你 "想像出一種可能會用到 user font 的場合",而是想知道 "實際確實會用到 user font 的情 ...
    可以試看看 Aegisub 能不能找到 user font

    测试了一下,Aegisub(最新是2014年的3.2.2版)可以列出user font,可以正常保存字幕,但是font collector不能复制导出user font。不太清楚它是怎么实现的。我记得列举字体有好几种不同的API和库刚才找到了这里bit.ly/2FsiVOV    ,Aegisub的Font Collector调用了get_installed_fonts(),这个函数是枚举注册表的(作者虽然写了一个GdiFontFileLister,但它里面仍然是调用了这个列举注册表的函数),于是就报错了。
    但是,一般的功能可以正常工作(比如Style Editor),原因是是直接调用了wxWidgets框架的wxFontEnumerator::GetFacenames(),而wxWidgets for windows部分源码bit.ly/2U6c4Uw  中似乎是调用了Windows GDI的EnumFontFamiliesEx(),所以跟着正常工作了。不过这个API列出来的很多字体名称前带@,这些是垂直书写字体,与InstalledFontCollection结果不同。
    也许对LAF 或者Aegisub font collector来说最适合的还是直接枚举注册表吧。
    他有權限把系統字型 copy 出來嗎?  這我不太清楚
    可以的。LAF本身是以普通用户权限运行的,这也是它在1809上可以保存系统字体的原因。



    Windows升级A搞挂了B其实挺常见的,而且bug也多,比如stack overflow上有个非常诡异的问答:win10系统无法预览和安装字体,结果最后发现解决方法竟然是完全没有关系的“启用Windows防火墙”…… superuser.com/questions/957907/unable-to-install-fonts-on-windows-10

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2016-12-31 01:33
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    12

    主题

    291

    帖子

    446

    真·积分

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    373542
    tonyhsie  楼主| 发表于 2019-3-24 05:41:42 | 显示全部楼层
    测试了一下,Aegisub(最新是2014年的3.2.2版)可以列出user font,可以正常保存字幕,但是font collector不能复制导出user font。不太清楚它是怎么实现的。我记得列举字体有好几种不同的API和库刚才找到了这里bit.ly/2FsiVOV    ,Aegisub的Font Collector调用了get_installed_fonts(),这个函数是枚举注册表的(作者虽然写了一个GdiFontFileLister,但它里面仍然是调用了这个列举注册表的函数),于是就报错了。
    但是,一般的功能可以正常工作(比如Style Editor),原因是是直接调用了wxWidgets框架的wxFontEnumerator::GetFacenames(),而wxWidgets for windows部分源码bit.ly/2U6c4Uw  中似乎是调用了Windows GDI的EnumFontFamiliesEx(),所以跟着正常工作了。不过这个API列出来的很多字体名称前带@,这些是垂直书写字体,与InstalledFontCollection结果不同。
    也许对LAF 或者Aegisub font collector来说最适合的还是直接枚举注册表吧。
    目前 LAF 也能辨識出字幕有此字型,加上系統是否已安裝此字型,這些功能都正常,有問題的部分只是無法把字型複製出來

    對不支援 user font 的字型程式來說,這種結果應該都是一樣的

    窮舉 Registry 是必然的,看起來你也是專業的程式工作者,或許你再想想就能知道原因了

    可以的。LAF本身是以普通用户权限运行的,这也是它在1809上可以保存系统字体的原因。



    Windows升级A搞挂了B其实挺常见的,而且bug也多,比如stack overflow上有个非常诡异的问答:win10系统无法预览和安装字体,结果最后发现解决方法竟然是完全没有关系的“启用Windows防火墙”…… superuser.com/questions/957907/unable-to-install-fonts-on-windows-10


    哈哈,真虧他能找出這個辦法


    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-12-30 02:36
  • 签到天数: 18 天

    [LV.4]偶尔看看III

    3

    主题

    25

    帖子

    40

    真·积分

    中级会员

    Rank: 3Rank: 3

    积分
    5412
    seven202 发表于 2019-4-10 03:34:01 | 显示全部楼层
    本帖最后由 seven202 于 2019-4-10 03:35 编辑

    回文不小心犯傻了
    麻煩管理員大大刪文一下了<O>
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    VCB-Studio分享论坛X

    VCB-S微信公众号上线了,欢迎关注!

    欢迎关注VCB-S微信公众号,公众号将不定期推送有关本组最新资源的消息。...

    点击查看详情 
    快速回复 返回顶部 返回列表