0

この簡単な例を外部組み込みデバイスで実行しようとしています: https://doc.qt.io/qt-5/qtwebengine-webengine-minimal-example.html#

デスクトップでは問題なく動作しますが、デバイスで実行すると、次の出力が得られます。

[0820/143911.204817:ERROR:nss_util.cc(94)] Failed to create /home/root/.pki/nssdb directory.
[0820/143911.325717:ERROR:nss_util.cc(94)] Failed to create /home/root/.pki/nssdb directory.
QFontDatabase: Cannot find font directory /usr/lib/fonts.
Note that Qt no longer ships fonts. Deploy some (from http://dejavu-fonts.org for example) or switch to fontconfig.
[2861:2880:0820/143911.407749:ERROR:surface_factory_qt.cpp(82)] eglGetProcAddress not found.
[2861:2876:0820/143911.513052:ERROR:nss_util.cc(94)] Failed to create /home/root/.pki/nssdb directory.
[2861:2861:0820/143911.534321:FATAL:platform_font_linux.cc(63)] Check failed: typeface. Could not find any font: sans, sans
#0 0x0000b322ee9a <unknown>
#1 0x0000b323924a <unknown>
#2 0x0000b358221e <unknown>
#3 0x0000b358255e <unknown>
#4 0x0000b3582636 <unknown>
#5 0x0000b357d5b4 <unknown>
#6 0x0000b2fb3f82 <unknown>
#7 0x0000b2fb3fd2 <unknown>
#8 0x0000b2d3443a QtWebEngineCore::WebContentsAdapter::initialize()

Aborted (core dumped)

アプリケーションにデフォルトのフォントを設定し、それをリソースとしてバンドルします。

int fontId = QFontDatabase::addApplicationFont(":/fonts/SourceHanSans-Regular.ttc");
if (fontId != -1) {
    QFont m_font("Source Han San");
    m_application->setFont(m_font);
}

私は周りを検索しようとしましたが、エラーに関する有用な情報は実際には見つかりませんでした. 他の誰かが以前にこの問題を抱えていましたか? Qt 5.9.6 を使用しています。

4

1 に答える 1

1

Webengine には fontconfig が機能する必要があり、fontconfig によって検索されるディレクトリに互換性のあるフォントがインストールされている必要があります。

于 2019-12-10T18:22:25.300 に答える