Como impedir a renderização de etiquetas no espaço de sangria no QGIS compositor?

10

Estou fazendo mapas para um livro em que os mapas correm até a borda da página. A impressora recomendou um espaço de sangramento de 3 mm ao redor das imagens; portanto, se minha página for 127x177 mm, as imagens deverão ser 133x183 mm. Esse espaço de sangramento é para permitir erros quando as páginas do livro são cortadas e, no caso dos mapas, não deve haver nenhuma informação essencial. Então, eu uso um tamanho de página do compositor que inclui esses 3 mm extras em todos os lados.

Não quero que os rótulos das cidades sejam cortados na borda do mapa; portanto, desativei a opção "Mostrar rótulos de partes parciais". No entanto, as etiquetas ainda estão sendo mostradas nessa "terra de ninguém" de 3 mm que pode ser cortada pela impressora.

Mapa com sangramento onde nenhum rótulo deve renderizar

A solução que considerei é fazer dois mapas sobrepostos, concêntricos e perfeitamente alinhados; o mapa inferior corre até a borda do sangramento e não mostra as cidades; o mapa na parte superior seria o tamanho exato da página do livro (ou seja, 3 mm menos em cada lado que o mapa subjacente) e mostraria a camada da cidade, criando, portanto, uma borda de 3 mm onde não há cidades (ou rótulos) mostradas.

No entanto, não consigo alinhar perfeitamente esses dois mapas no compositor. Eu tentei calcular as extensões desses dois mapas para que eles tivessem o mesmo centro e a mesma escala, mas o QGIS compositor parece ter uma precisão fixa de 3 casas decimais para que eu nunca possa fazer com que eles se alinhem perfeitamente.

Outra maneira de abordar esse problema seria um novo recurso que permitiria não renderizar etiquetas no atlas "Margem ao redor do recurso".

Existe alguma maneira de impedir que as etiquetas sejam renderizadas dentro de uma borda de sangria?

Mir Rodriguez
fonte

Respostas:

1

A solução abaixo pode não ser a solução perfeita para o seu problema, mas será uma solução alternativa para resolver o problema que você possui.

Se o número de pontos (cidades) que você não deseja mostrar dentro do sangramento for pequeno, você poderá excluí-los usando o Query Builder, como a seguir

  1. Clique com o botão direito do mouse na camada de destino (camada de ponto da cidade) -> vá para as propriedades da camada
  2. Vá para a guia Geral
  3. No canto inferior direito, há um botão "Query Builder", clique nele para criar uma consulta
  4. Escreva uma expressão "FIELD_NAME" != 'NAME OF THE CITY'
  5. Substitua FIELD_NAME pelo campo que contém os nomes das cidades e Substitua 'NAME OF THE CITY' pelo nome da cidade que você deseja que seja excluído da exibição na sangria.
  6. Se você deseja excluir mais de uma cidade, é necessário escrever "FIELD_NAME" != 'NAME OF THE CITY_1' AND "FIELD_NAME" != 'NAME OF THE CITY_2'e assim por diante.
ahmadhanb
fonte