sankyo_takada
2015年5月20日 13時14分
お世話になります。
高田と申します。
Armadillo410でLCDに日本語を表示しているのですが、
一部表示できないフォントがあります。
表示方法についてご存知の方がおられましたらご教示いただけないでしょうか。
<環境>
Armadillo410
Qt4.8.3
Linux2.6.26
<状況>
LCD上に下付きの数字(「₂」など)を表示しようとしたところ
何も表示されませんでした。
フォントはTakaoゴシックを使用しています。
よろしくお願いいたします。
コメント
at_kojiro.yamada
補足ですが、
DejaVuSansは、日本語フォント非対応なのでひらがなや漢字は表示できません。
ですが、QFontは
指定したフォントに含まれない文字を
自動的に他のフォントで補完してくれます。
そのため、TakaoGothicとDejaVuSansを一緒に配置しておけば
下付きの文字と同時に漢字なども使用することができます。
■TakaoGothicとDejaVuSansを配置する
[ATDE]$ ls atmark-dist/romfs/usr/local/Trolltech/Qt-4.8.3-qws-armel/lib/fonts/ DejaVuSans.ttf TakaoGothic.ttf [ATDE]$ make image
■漢字と下付きの文字を同時に使用する
#include <QString> :(省略) QString str = QString::fromUtf8("水(H₂O)");
sankyo_takada
at_kojiro.yamada
2015年5月21日 16時28分
TakaoGothicには下付きの文字が無いようです。
他のフォントを利用してみてはいかがでしょうか?
ATDEに入っているフォントで、DejaVuSansというものがあります。
こちらのフォントでは下付きの文字も表示することができました。
ファイルは以下に配置されています。
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
ただし、Qtで、下付きの文字をchar型として扱うと文字化けしてしまいます。
その場合は、QString::fromUtf8()を使用するのが良いかと思います。
■参考情報
Armadillo:Qt4で簡易的にフォントを変更する
https://users.atmark-techno.com/blog/615/1025