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:
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?
export QT_QPA_FONTDIR=<path to font files>
par exempleexport QT_QPA_FONTDIR=/usr/share/fonts/open-sans
Réponses:
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
.la source