【教程】VLC APK(Android版)更改字幕默认字体的方法 (不修改系统字体)
本帖最后由 tmdtmdtmdqq 于 2025-4-1 14:30 编辑据我了解,VLC Android版中并没有更改字幕默认字体的选项。App设置只能更改粗细、透明度、颜色等。
网上搜了一圈,除了魔改系统字体的方法,还有人提出修改libvlc.so可以更改缺字时fallback的字体。
测试了,ass字幕缺字时候确实能行,但是对于srt字幕却没修改到字体。
对libvlc.so研究了一番,发现修改另外一个位置就能修改到srt字幕使用的默认字体。
方法如下,修改libvlc.so的以下位置:
然后替换掉/data/app/~~9yz3DqvRQgXAUoNRcksm2w==/org.videolan.vlc-kRPJXdH9b61EkiINm3RMKg==/lib/arm64/下的同名文件(需要root,标蓝的两级目录可能不同手机会有不同名称)
上述修改的3个位置为:
/system/etc/fonts.xml => /sdcard/fonts/fts.xml
/system/fonts => /sdcard/fonts
/system/fonts/NotoSansCJK-Regular.ttc => /sdcard/fonts/ass-fallback-myfont.ttf没有root或嫌繁琐不想改的,直接装下面patch过的apk就好。
然后,操作下面两步。
1)在 /sdcard/ 目录下建立一个 fonts 的目录,
放入fts.xml和你想使用的字体文件。
fts.xml里的内容很简单,用于 srt字幕 显示的字体(附件已带)。
(注意:文件应以utf-8编码保存)
<?xml version="1.0" encoding="utf-8"?>
<familyset version="23">
<family>
<font weight="400" style="normal">FZZhunYuan-M02.ttf</font>
</family>
</familyset>
可以将 FZZhunYuan-M02.ttf 替换为 /sdcard/fonts/ 目录下的字体文件名(包括后缀)。(otf和ttc文件按理说也支持,看系统)
也可以将名字改成跟下面一样ass-fallback-myfont.ttf,用同一个字体。
2)选一个字体文件改名为ass-fallback-myfont.ttf,
用于 ass字幕 缺字时(fallback)显示的字体(简而言之就是你用ass字幕没装字体时候显示用的)。
因为上面改libvlc.so时候设置了这个文件名路径,
所以此处只能将字体文件改成这个文件名。
(otf和ttc文件按理改成ttf后缀也是支持的,看系统)
方正字体的话,推荐使用v5.34+版的方正准圆_GBK、v5.32+版的方正粗圆_GBK、v1.31+版的方正兰亭中粗黑_GBK(FZLanTingHei-DB1-GBK)【不要以为GB18030就支持得好】
这几个字体,中日文字都支持得比较好
=======================================
提供一个自动补丁程序libvlc_font_patch。
以后有新版的VLC,只要改动不大,就能自动生成patch过的apk。(测试过v3.6.0,只支持arm64-v8a版本)
只需直接把原版apk拖进去patch_apk_run.bat即可 (路径最好不要有空格和特殊字符),生成XXXXX_v1Signed_zipaligned_v2Signed.apk
系统需要Python3.7+和Java1.8+的环境
patch过的apk 不能直接覆盖 原版 安装,因为apk签名已经改过。需要先卸载原版再装。
patch过的新版 可以覆盖 patch过的旧版 安装。
装回原版也要先卸载patch过的apk。
某些比较烂的杀毒软件会报(杀毒报告),信不过就不要用这程序了
最新官方稳定版下载地址,下载arm64-v8a版本
官方站:https://get.videolan.org/vlc-android/last/
清华大学镜像站(大陆线路推荐):https://mirrors.tuna.tsinghua.edu.cn/videolan-ftp/vlc-android/last/
Patch过的VLC apk v3.6.2 -->网盘下载
页:
[1]