OpenLayers низкого разрешения и / или сдвигов в QGIS print composer?

46

У меня проблемы с плагином OpenLayers Qgis и компоновщиком карт:

Если я создаю OSM-фоновый слой и хочу экспортировать его, OSM-Layer выглядит нормально в обычном окне программы qgis. Но в компоновщике карт и после экспорта слой сместился относительно других моих слоев фигур (EPSG: 32633 - WGS 84 / UTM zone 33N).

Во-вторых, выходное разрешение экспортированного osm-слоя очень и очень плохое.

Очень плохой способ обойти эту проблему - увеличить разрешение экрана и сделать скриншот окна составления карты в qgis. Но я не думаю, что это будет очень профессионально. Это также вызвало бы много боли :)

Я использую Qgis 1.8.0-Lisboa под Linux. Плагин openlayers версии 0.92.

береговые линии сдвинуты

desputin
источник
1
Desputin, Вы когда-нибудь находили решение для печати с высоким разрешением OSM?
C_K
1
Плагин OpenLayers НЕ ПОДДЕРЖИВАЕТ печать. Вместо этого используйте QuickMapServices gis.stackexchange.com/questions/20191/…
underdark
Наличие этой же проблемы с плагином QuickMapServices и создание карты размером с страницу не решают ее. Любые другие предложения?
TTome
Это не дает ответа на вопрос. Чтобы критиковать или запросить разъяснения у автора, оставьте комментарий под своим постом. - Из обзора
Whyzar

Ответы:

21

Позднее обновление

Проблемы с плагином Openlayers и композитором печати длятся годами, без решения. Как следствие, старайтесь избегать плагин Openlayers, когда вам нужен вывод на печать. Тем временем был разработан новый плагин QuickMapServices. Я предлагаю попробовать это.


Извините, я не могу воспроизвести ошибку. Можете ли вы попробовать текущую версию плагина Openlayers (1.0.0) и мастер Qgis? Композитор печати значительно улучшился после Лиссабона.

Также вы можете попробовать перепроектировать ваш слой данных в EPSG 3857. Я думаю, это ваш проект CRS.

Может быть связано с этой ошибкой:

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

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

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

но, кажется, появляется не в каждом случае.

Andrej
источник
Спасибо за ответ: теперь у меня есть плагин openlayer, и он работает !! Как мне получить мастер qgis в Debian? Теперь у меня есть это в репозитории: deb qgis.org/debian wheezy main Еще один вопрос: могу ли я улучшить разрешение фоновой карты? Для печати это очень плохо ...
desputin
Для установки Debian вам лучше открыть новую тему. Я не могу помочь тебе там. Для разрешения печати вы можете увеличить dpi в print composer, но можете получить карту без фона. Или выберите больший формат бумаги и используйте вывод PDF или принтер PDF в качестве вывода.
AndreJ
Хм с разрешением печати вы меня не так поняли. Карта выглядит отлично, за исключением того, что OSM-разрешение плохое. Похоже, что это не улучшится, если я экспортирую с более высоким разрешением.
desputin
Привет @AndreJ! Поскольку это принятый ответ, не могли бы вы добавить примечание о том, что плагин Openlayers не поддерживает печать?
Подземье
@underdark Думаю, лучший совет - избегать плагин, где это возможно.
AndreJ
22

Это распространенная ошибка, и есть много потоков, которые занимаются этим.

Решение состоит в том, чтобы ваш элемент / объект карты соответствовал составителю карты.

Exammple

ошибка

julsbreakdown
источник
Спасибо, но это действительно раздражает. Есть ли прогулка? В моем случае карта выглядит хорошо в компоновщике карт, но экспортированные изображения неверны.
Тактопода
1
Как только карта div на 100% соответствует вашему композитору карты (это основная проблема, если у вас есть сдвиг), вы можете добавить белые фигуры (т.е. прямоугольники) со всех сторон компоновщика карты. Надеюсь, что это поможет
julsbreakdown
1
У меня возникла та же проблема, и я изменил холст карты, чтобы размер страницы работал. Я использую QGis 2.8.1 в Win7
Даниэль
Аналогичным и более простым решением для меня было выбрать параметр «Обрезать содержимое» при экспорте в изображение.
Amball
13

Для будущих читателей, которые просматривают этот пост, эта ошибка все еще существует в 2.12. Вот наглядный пример ошибки, скриншот из PDF-файла, который я создал с помощью Print Composer. Все слои, а также базовая карта изображений Bing были EPSG: 3857 (WGS 84 / Pseudo Mercator). Я отметил красным, как изменились основные изображения. Этот сдвиг происходит только в выводе Print Composer; везде это правильно выровнено. Это, конечно, похоже на некоторый сдвиг данных:

введите описание изображения здесь

Но это не базовый сдвиг. Это ошибка Print Composer, которая сдвигает местоположение карты любой (все? Я не уверен. По крайней мере, Bing Aerial) базовой карты OpenLayers при экспорте в PDF (я думаю, что и png тоже). Но этот сдвиг происходит только в том случае, если в Print Composer есть поле вокруг карты, т. Е. Область карты меньше размера бумаги. Даже на миллиметр (странно, да?)

К счастью, объяснение Шанкара (спасибо!) Предлагает обходной путь. Я расширю его ответ этими деталями:

Чтобы обойти эту ошибку, если вы добавите карту в Print Composer, которая содержит базовую карту OpenLayers, карта должна заполнить весь размер страницы без каких-либо полей (это прискорбно, потому что пустое пространство вокруг карты может помочь визуально). Чтобы заполнить страницу, перейдите на панель «Свойства элемента карты» («Просмотр»> «Панели»> «Свойства элемента»). Разверните раздел «Положение и размер». Обратите внимание на поля X, Y, Width и Height; они определяют исходную точку и расширение карты на странице. Поскольку мы хотим, чтобы размер карты был равен размеру страницы, мы вводим значения размера страницы. Например, размеры бумаги формата А4 составляют 210 мм x 297 мм ( http://www.papersizes.org/a-paper-sizes.htm ). Поэтому для портретно-ориентированной карты введите: X = 0, Y = 0, Ширина = 210, Высота = 297

  • эти значения предполагают, что «Контрольная точка» отмечена на северо-западе.

Обратите внимание, как карта заполняет всю страницу. Теперь при экспорте в PDF базовое изображение базовой карты не будет смещено.

Стю Смит
источник
1
Дополнительная информация! Плагин QuickMapServices, похоже, не имеет этой проблемы. Я провел неформальное тестирование с QMS, и сдвиг не произошел. См ответ romainbh в следующем: gis.stackexchange.com/questions/170347/…
Stu Smith
9

Я думаю, что я определил проблему. при печати, если вы устанавливаете положение и размер слоя карты в композиторе, точно равный размеру страницы, открытые слои соответствуют векторным слоям, в противном случае открытые слои получают свои экстенты от размера страницы, а затем подгоняют слой к меньшей карте размер, вызывающий смещение.

в основном плагин открытых слоев использует размер страницы вместо размера карты при выборе области открытого слоя для отображения при печати. В качестве обходного пути просто установите размер карты в точности размер страницы в композиторе.

Шанкар Гупта
источник
4

5827 # 13 определил причину проблемы с идентичными симптомами. Плагин openlayers принимает размер страницы, а не размер карты в качестве ссылки.

Саймон
источник
1
Саймон, добро пожаловать в GISse, и спасибо за ваш вклад. В интересах предоставления как можно большего количества информации в ответе может помочь ссылка на отчет об ошибке, на который вы ссылаетесь.
Получить пространственный
К сожалению, отчет об ошибке, указанный в ответе ( hub.qgis.org/issues/5827 ), был удален с qgis.org.
AndreJ
2

Снижение точек на дюйм (при экспорте) и масштаба (например, от 1: 500 до 1: 3000) - некоторые обходные пути для этой ошибки.

brentiemapper
источник
-2

5827 # 13 определил причину проблемы с идентичными симптомами. Плагин openlayers принимает размер страницы, а не размер карты в качестве ссылки. поэтому расположите слой Google Earth на полный размер бумаги.

Шанкар Гупта
источник