QGISサーバーはUbuntu 16.04でフォントをレンダリングしません


8

私はqgis-serverパッケージをUbuntugisリポジトリ(ubuntugis-unstable)から最新の3.2.xに更新しましたが、すべて正常に機能しますが、フォントレンダリングは機能します。タイル、凡例、印刷テンプレートのすべてのラベルは四角で表示されます。

ここに画像の説明を入力してください

アップグレード後、nginxエラーログに次のようなメッセージがたくさん表示されます。

QFontDatabase: Cannot find font directory /usr/lib/x86_64-linux-gnu/fonts - is Qt installed correctly?

/ usr / lib / x86_64-linux-gnu / fontsから/ usr / share / fontsへのシンボリックリンクを追加し、でフォントキャッシュを更新することで、これを修正できますfc-cache -fv。しかし、これによりラベルの視覚化に変更はありませんでした。

QGISプロジェクトはttf-ubuntu-font-familyパッケージからインストールされたUbuntuフォントを使用し、QGISデスクトップで問題なく表示されます。フォントは、を使用してサーバーにもリストされますfc-list

nginxエラーログにもQGISサーバーログにも、フォントに関連するエラーメッセージはありません。Qtに関連している可能性があるので、ヒントはありますか?


2
export QT_QPA_FONTDIR=<path to font files>たとえば、環境変数を設定する必要があると思いますexport QT_QPA_FONTDIR=/usr/share/fonts/open-sans
Fran Raga

ヒントをありがとう、QT_QPA_FONTDIRがキーです。環境変数としてエクスポートすることはできません。少なくともfastcgiを使用する場合は、fastcgi_param QT_QPA_FONTDIR "/ usr / share / fonts / open-sans"のようにする必要があります。(nginx)またはSetEnv QT_QPA_FONTDIR / usr / share / fonts / open-sans(apache)。
ジェラルド

回答:


5

私は自分のコメントを答えにしています:

export QT_QPA_FONTDIR=<path to font files>エクスポートなどの環境変数を設定する必要がありますQT_QPA_FONTDIR=/usr/share/fonts/open-sans

しかし、fastcgiを使用するときは、@ geraldoのようにする必要があります。

nginx

fastcgi_param QT_QPA_FONTDIR "/ usr / share / fonts / open-sans"

アパッチ

SetEnv QT_QPA_FONTDIR / usr / share / fonts / open-sans

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.