我有一个HTML文件,我想在QWebView
中加载。标题看起来像:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
</head>
正文是混合拉丁文和日文字符。
页面在Chrome中完美显示,但当页面显示在□
时,所有日文字符都会被QWebView
替换。
QtWebKit似乎使用与QTextCodec
使用的系统相同的系统来处理unicode和其他字符集之间的转换(如果我错了,请纠正我),因此我假设QtWebKit可以支持Shift_JIS
。
作为测试,我尝试为汉字字符添加特定的 unicode (例如ぁ
以显示ぁ)到我的HTML文件。我在Chrome中正确呈现了角色,但它在□
中也显示为QWebView
- 我不确定这是否意味着我可以信任Shift_JIS来在Qt中进行unicode转换,但这肯定意味着我不能认为这是问题的原因。
我不确定从哪里开始;任何关于解决方案或其他调查领域的建议都将非常感激。
答案 0 :(得分:1)
原来我一直在思考这个问题,实际上有一个非常简单的解决方案:
当遇到当前字体无法显示的汉字字符时,Chrome很聪明,可以回退到支持这些字符的字体(在我的Win 7 PC上,默认的汉字字体是MS Gothic)。
QtWebKit没有此功能,因此有必要为需要它的区域明确指定(在CSS中)支持汉字的字体。