При печати Gmap маркеры не отображаются - PullRequest
1 голос
/ 03 марта 2012

У меня проблема с печатью карт Gmap V3. Печать осуществляется нажатием кнопки. Вот код:

function Print() {
                    text = document.getElementById('mapCanvas').innerHTML;
                    //mapCanvas is div whith map
                    printwin = open('', 'printwin', 'width=545,height=446');
                    printwin.document.open();
                    printwin.document.writeln('<html><head><title></title></head><body onload=print();close()>');
                    printwin.document.writeln(text);
                    printwin.document.writeln('</body></html>');
                    printwin.document.close();
                }

На карте используются пользовательские маркеры. При печати они не появляются, и если вы печатаете эту страницу через стандарт, значит все хорошо.

Кто-нибудь сталкивался с этой проблемой?

P.S. Извините за плохой английский. :)

1 Ответ

2 голосов
/ 03 марта 2012

Маркеры не включены в innerHTML из div. Вместо этого они накладываются на саму карту. Проблема не в том, что вы не можете печатать маркеры, а в том, что вы копируете карту только в новое окно, а не сами маркеры.

Чтобы решить вашу проблему, вы должны включить в свой новый HTML-документ больше, чем innerHTML вашего mapCanvas div. Также включите javascript и код, который размещает маркеры на вашей карте.

С другой стороны, я думаю, вам следует попробовать использовать другой файл CSS для печати, который скрывает то, что вы не хотите отображать при печати, и в то же время позволяет отображать вашу карту и маркеры.

Сделайте это, используя это в CSS:

@media print {
  /* style sheet for print goes here */
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...