我有一个网站,其中一些页面包含用户生成的内容。我使用 phantomjs(基于 QtWebKit)来截取页面,所以它们必须在 QtWebKit 中完美呈现。
当内容不是英文时,问题就开始了。然后,流行的浏览器(例如 Chrome 和 Firefox)回退到 CSS 字体系列中的下一个字体,直到默认字体。但是,在我的测试中,QtWebKit 似乎表现出不同的行为:它错误地选择了无法呈现内容的字体。
考虑这个示例文件“fonts.html”:
calibri, arial:
<div style="font-family: calibri, arial; font-size: 36px;">
ฝ่ายอีเว้นท์พร้อมแล้วกับงานปาร์ตี้ที่สนุกที่สุดในกทม
</div>
calibri:
<div style="font-family: calibri; font-size: 36px;">
ฝ่ายอีเว้นท์พร้อมแล้วกับงานปาร์ตี้ที่สนุกที่สุดในกทม
</div>
arial:
<div style="font-family: arial; font-size: 36px;">
ฝ่ายอีเว้นท์พร้อมแล้วกับงานปาร์ตี้ที่สนุกที่สุดในกทม
</div>
default:
<div style="font-size: 36px;">
ฝ่ายอีเว้นท์พร้อมแล้วกับงานปาร์ตี้ที่สนุกที่สุดในกทม
</div>
以下是它在 Chrome 和 Arora(基于 QtWebKit 的浏览器,它提供与我的 phantomjs 脚本相同的结果)中的呈现方式:
我想要的是在 Calibri 中呈现文本,如果不适合某些字符,则回退到 Arial。
我会接受告诉我如何配置 QtWebKit 以允许这样做的解决方案(我在网上找不到任何东西),或者如何将我的 HTML/CSS 更改为“支持 QtWebKit”。