OpenLayers basse résolution et / ou changements dans QGIS print composer?

46

J'ai des problèmes avec le plugin OpenLayers de Qgis et le compositeur de carte:

Si je crée un calque OSM d'arrière-plan et que je souhaite l'exporter, le calque OSM apparaît parfaitement dans la fenêtre normale du programme qgis. Mais dans le composeur de carte et après l'exportation, la couche s'est décalée par rapport à mes autres couches de forme (EPSG: 32633 - zone 33N WGS 84 / UTM).

Deuxièmement, la résolution de sortie de la couche osm exportée est très, très mauvaise.

Un très mauvais moyen de résoudre ce problème serait d'augmenter la résolution de l'écran et de faire une capture d'écran de la fenêtre de composition de carte de qgis. Mais je ne pense pas que ce serait très professionnel. Cela causerait aussi beaucoup de douleur :)

J'utilise Qgis 1.8.0-Lisboa sous Linux. Le plugin Openlayers est la version 0.92.

littoraux décalés

desputin
la source
1
Desputin, Avez-vous déjà trouvé une solution pour imprimer une résolution d'impression OSM de haute qualité?
C_K
1
Le plug-in OpenLayers NE SUPPORTE PAS l'impression. Utilisez QuickMapServices à la place de gis.stackexchange.com/questions/20191/…
underdark
Avoir ce même problème avec le plugin QuickMapServices et rendre la carte la taille de la page ne le résout pas. D'autres suggestions?
TTome
Cela ne fournit pas de réponse à la question. Pour critiquer ou demander des éclaircissements à un auteur, laissez un commentaire sous son message. - De l'avis
whyzar le

Réponses:

21

Mise à jour tardive

Les problèmes avec le plugin Openlayers et le composeur d'impression durent depuis des années, sans solution. Par conséquent, essayez d'éviter le plugin Openlayers lorsque vous avez besoin d'une sortie d'impression. Un nouveau plugin, QuickMapServices, a été développé entre-temps. Je suggère d'essayer cela.


Désolé, je ne peux pas reproduire l'erreur. Pouvez-vous essayer la version actuelle du plugin Openlayers (1.0.0) et de Qgis master? Le compositeur d’imprimés s’est beaucoup amélioré après Lisboa.

Vous pouvez également essayer de reprojeter votre couche de données sur EPSG 3857. Je suppose que c'est votre projet CRS.

Peut-être lié à ces rapports de bugs:

http://hub.qgis.org/issues/4223

http://hub.qgis.org/issues/5827

http://hub.qgis.org/issues/6653

mais semble ne pas apparaître dans tous les cas.

AndreJ
la source
Merci pour la réponse: Maintenant, j'ai le plugin OpenLayer et ça a fonctionné !! Comment obtenir qgis master sur debian? J'ai maintenant ceci dans le référentiel: deb qgis.org/debian Wheezy encore une question: Puis-je améliorer la résolution de la carte de fond? Pour l'impression, c'est très pauvre ...
desputin
Pour l’installation de Debian, il vaut mieux ouvrir un nouveau sujet. Je ne peux pas vous aider là-bas. Pour la résolution d'impression, vous pouvez augmenter le dpi dans le composeur d'impression, mais vous obtiendrez peut-être une carte sans arrière-plan. Ou sélectionnez un format de papier plus grand et utilisez le format de sortie pdf export ou une imprimante pdf.
AndreJ
Hm avec la résolution d'impression, vous m'avez mal compris. La carte a l'air bien SAUF que la résolution OSM est mauvaise. Cela ne semble pas s'améliorer si j'exporte avec une résolution plus élevée.
desputin
Bonjour @AndreJ! Puisque c'est la réponse acceptée, cela vous dérangerait-il d'ajouter une note indiquant que le plug-in Openlayers ne prend pas en charge l'impression?
underdark
@underdark Je suppose que le meilleur conseil est d'éviter autant que possible le plugin.
AndreJ
22

C'est un bug courant, et de nombreux threads traitent de cela.

Une solution consiste à adapter votre élément / objet de carte au compositeur de carte.

Exemple

punaise

julsbreakdown
la source
Merci, mais c'est vraiment énervant. Y a-t-il une promenade autour? Dans mon cas, la carte a l'air bien dans le composeur de carte, mais les images exportées sont fausses.
Tactopoda
1
Une fois que la division de la carte correspond à 100% à votre composeur de carte (il s'agit du problème principal en cas de décalage), vous pouvez ajouter des formes blanches (c'est-à-dire des rectangles) de tous les côtés du composeur de carte. J'espère que cela vous aidera
julsbreakdown
1
J'avais le même problème et je changeais le fond de la carte pour que la taille de la page fonctionne. J'utilise QGis 2.8.1 dans Win7
Daniel
Pour moi, une solution de contournement similaire et plus simple consistait à choisir l'option Rogner au contenu lors de l'exportation vers une image.
amball
13

Pour les futurs lecteurs qui consultent ce post, ce bogue existe toujours à la version 2.12. Voici un exemple visuel du bogue, capture d'écran d'un pdf que j'ai créé en utilisant Print Composer. Toutes les couches, ainsi que le fond de carte des images Bing, étaient au format EPSG: 3857 (WGS 84 / Pseudo Mercator). J'ai noté en rouge comment les images sous-jacentes avaient changé. Ce décalage ne se produit que dans la sortie Print Composer; partout ailleurs, il s'alignait correctement. Cela ressemble certainement à une sorte de décalage de données:

entrez la description de l'image ici

Mais ce n'est pas un décalage de données. Il s’agit d’un bogue Print Composer qui modifie l’emplacement de tout fond de carte OpenLayers lorsqu’il est exporté vers un fichier PDF (png, également, je pense). Mais ce décalage ne se produit que s'il existe une marge autour de la carte dans Print Composer, c'est-à-dire que la zone de la carte est plus petite que la taille du papier. Même par millimètre (bizarre, hein?)

Heureusement, l'explication de Shankar (merci!) Fournit une solution de contournement. Je vais développer sa réponse avec ces détails:

Pour contourner le bogue, si vous ajoutez une carte au compositeur qui contient un fond de carte OpenLayers, la carte doit remplir toute la taille de la page, sans aucune marge (ce qui est regrettable, car un espace blanc autour de la carte peut aider visuellement). Pour remplir la page, accédez au panneau Propriétés de l'élément de la carte (Affichage> Panneaux> Propriétés de l'élément, coché). Développez la section "Position et taille". Notez les cases X, Y, Largeur et Hauteur; ils définissent le point d'origine et l'extension de la carte sur la page. Puisque nous voulons que la taille de la carte soit égale à la taille de la page, nous saisissons les valeurs de taille de la page. Par exemple, les dimensions du papier A4 sont 210 mm x 297 mm ( http://www.papersizes.org/a-paper-sizes.htm ). Donc, pour une carte en mode portrait, entrez: X = 0, Y = 0, Largeur = 210, Hauteur = 297

  • ces valeurs supposent que le "point de référence" soit coché dans la case nord-ouest.

Remarquez comment la carte remplit la page entière. Désormais, lorsque vous exportez au format PDF, l’image de fond de carte sous-jacente ne sera pas déplacée.

Stu Smith
la source
1
Information additionnelle! Le plugin QuickMapServices ne semble pas avoir ce problème. J'ai fait des tests informels avec QMS et le changement n'a pas eu lieu. Voir la réponse de romainbh dans ce qui suit: gis.stackexchange.com/questions/170347/…
Stu Smith
9

Je pense avoir identifié le problème. lors de l'impression, si vous définissez la position et la taille du calque de la carte dans le composeur exactement égales à la taille de la page, les calques ouverts correspondent aux calques vectoriels; sinon, les couches ouvertes tirent leur étendue de la taille de la page puis ajustent le calque à la carte plus petite. taille, provoquant un désalignement.

Fondamentalement, le plug-in des couches ouvertes utilise la taille de la page au lieu de la taille de la carte pour choisir la zone de la couche ouverte à afficher lors de l'impression. Pour contourner le problème, définissez simplement la taille de la carte sur celle de la page dans le composeur.

Shankar Gupta
la source
4

5827 # 13 a identifié la cause d'un problème avec des symptômes identiques. Le plugin openlayers prend la taille de la page plutôt que la taille de la carte comme référence.

Simon
la source
1
Simon, bienvenue sur GISse et merci de votre contribution. Dans l’intérêt de fournir autant de réponses que possible dans une réponse, il peut être utile de fournir un lien vers le rapport de bogue que vous référencez.
Obtenez Spatial
Malheureusement, le rapport de bogue référencé dans la réponse ( hub.qgis.org/issues/5827 ) a été supprimé de qgis.org.
AndreJ
2

Réduire le dpi (lors de l'exportation) et l'échelle (par exemple de 1: 500 à 1: 3000) sont des solutions de contournement pour ce bogue.

brentiemapper
la source
-2

5827 # 13 a identifié la cause d'un problème avec des symptômes identiques. Le plugin openlayers prend la taille de la page plutôt que la taille de la carte comme référence. Alors, placez la couche Google Earth sur la taille du papier.

Shankar Gupta
la source