O QGIS Server não renderiza nenhuma fonte no Ubuntu 16.04

8

Acabei de atualizar o pacote qgis-server para o 3.2.x mais recente do repositório Ubuntugis (ubuntugis-unstable) e tudo funciona bem - mas a renderização da fonte. Todos os rótulos em blocos, legenda e modelos de impressão são exibidos como quadrados:

insira a descrição da imagem aqui

Após a atualização, recebi muitas dessas mensagens no log de erros do nginx:

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

Eu poderia corrigir isso adicionando um link simbólico de / usr / lib / x86_64-linux-gnu / fonts para / usr / share / fonts e atualizando o cache da fonte fc-cache -fv. Mas isso não trouxe alterações na visualização dos rótulos.

O projeto QGIS usa a fonte Ubuntu instalada a partir do pacote ttf-ubuntu-font-family e aparece bem no QGIS Desktop. A fonte também está listada no servidor usando fc-list.

Não há mensagens de erro relacionadas a fontes nem no log de erros nginx nem no log do QGIS Server. Poderia estar relacionado ao Qt, alguma dica?

geraldo
fonte
2
Eu acho que você precisa configurar a variável de ambiente, export QT_QPA_FONTDIR=<path to font files>por exemploexport QT_QPA_FONTDIR=/usr/share/fonts/open-sans
Fran Raga
Obrigado pela dica, QT_QPA_FONTDIR é a chave. Não funciona exportando-o como variável de ambiente, pelo menos ao usar o fastcgi, você precisa fazer algo como fastcgi_param QT_QPA_FONTDIR "/ usr / share / fonts / open-sans"; (nginx) ou SetEnv QT_QPA_FONTDIR / usr / share / fonts / open-sans (apache).
geraldo

Respostas:

5

Coloquei meu comentário como resposta:

Você precisa configurar a variável de ambiente, export QT_QPA_FONTDIR=<path to font files>por exemplo, exportarQT_QPA_FONTDIR=/usr/share/fonts/open-sans

Mas ao usar o fastcgi, você deve fazer algo como: @geraldo

nginx

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

apache

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

Fran Raga
fonte