QGIS Server ne rend aucune police sur Ubuntu 16.04

8

Je viens de mettre à jour le paquet qgis-server vers la dernière version 3.2.x du référentiel Ubuntugis (ubuntugis-unstable) et tout fonctionne bien - mais le rendu des polices. Toutes les étiquettes sur les tuiles, la légende et les modèles d'impression s'affichent sous forme de carrés:

entrez la description de l'image ici

Après la mise à niveau, j'ai reçu beaucoup de ces messages dans le journal des erreurs nginx:

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

Je pourrais résoudre ce problème en ajoutant un lien symbolique depuis / usr / lib / x86_64-linux-gnu / fonts vers / usr / share / fonts et en mettant à jour le cache des polices avec fc-cache -fv. Mais cela n'a apporté aucun changement à la visualisation des étiquettes.

Le projet QGIS utilise la police Ubuntu installée à partir du package ttf-ubuntu-font-family et s'affiche correctement sur QGIS Desktop. La police est également répertoriée sur le serveur utilisant fc-list.

Il n'y a aucun message d'erreur lié aux polices ni dans le journal des erreurs nginx ni dans la journalisation QGIS Server. Pourrait être lié à Qt donc, des indices?

geraldo
la source
2
Je pense que vous devez configurer la variable d'environnement, export QT_QPA_FONTDIR=<path to font files>par exempleexport QT_QPA_FONTDIR=/usr/share/fonts/open-sans
Fran Raga
Merci pour l'astuce, QT_QPA_FONTDIR est la clé. Cela ne fonctionne pas de l'exporter en tant que variable d'environnement, au moins lorsque vous utilisez fastcgi, vous devez faire quelque chose comme fastcgi_param QT_QPA_FONTDIR "/ usr / share / fonts / open-sans"; (nginx) ou SetEnv QT_QPA_FONTDIR / usr / share / fonts / open-sans (apache).
geraldo

Réponses:

5

Je mets mon commentaire comme réponse:

Vous devez configurer la variable d'environnement, export QT_QPA_FONTDIR=<path to font files>par exemple exporterQT_QPA_FONTDIR=/usr/share/fonts/open-sans

Mais lorsque vous utilisez fastcgi, vous devez faire quelque chose comme: @geraldo

nginx

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

apache

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

Fran Raga
la source