请问:绘制中英文混排时中文显示为方块如何解决?

我使用 java.awt.Graphics 设置英文字体绘制中英文混排文字的时候其中中文显示的是一个一个的方块,请问这样的情况该如何解决啊?
注:由于字体是用户选择的所以不能将字体限制为中文字体。

2个回答

由于字体是用户选择的所以不能将字体限制为中文字体。
逻辑上问题,如果不是中文字体,那么当然不被支持了。
所以要将字体设置为中文,如果用户存在中文字体的话,那么就能显示,并且,就算是设置为中文字体,如果用户不存在中文字体,也不能显示。
如果不能确定的话,要么不设置字体,或者设置一个通用的字体族,通常情况下都会有一些支持的中文字体。例如serif,这样可以支持“宋体”及“Times New Roman”,而如果直接设置“Times New Roman”,那么宋体肯定不能显示的

这个八成就是字符编码不支持中文的导致,

默认成utf-8的就能处理所有字符了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问