Я использую Qt-Embedded 4.7.3 и пытаюсь показать китайские символы в виджетах.Я собрал x86-версию встроенного Qt, чтобы я мог протестировать свое приложение, используя qvfb.Но я не могу показать китайский язык по неизвестной причине.Вот тестовая программа, которую я использую:
#include <QApplication>
#include <QLabel>
#include <QTextCodec>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
QLabel* label = new QLabel("Chinese中文");
label->show();
return app.exec();
}
У меня установлен китайский шрифт 'WenQuanYiMicroHeiLight.ttf' в lib / fonts.Китайские символы закодированы в UTF-8, поэтому, согласно Qt Documment, это должно позволить мне отображать китайский язык в виджете.Но когда я запускаю приложение в QVFB, оно не показывает китайский язык.
Есть идеи?
РЕДАКТИРОВАТЬ: Позже я обнаружил, что это на самом деле вызвано системой (хотя не совсем уверен).Я переключился на Debian, и китайцы снова показывают.Это может быть связано с проблемами зависимости пакетов в моей старой системе (ArchLinux, но с пакетами gnome2 ...)
Спасибо за ответы.