2015-01-21 6 views
5

मैं एक OpenLayer वी 3 नक्शे से wkhtmltopfd साथ एक पीडीएफ उत्पन्न करने के लिए प्रयास करते हैं, लेकिन मैं केवल एक खाली छवि मिलता है।wkhtmltopdf OpenLayers वी 3 में विफल रहा है

इस कोड को नक्शा छवियों के साथ एक पीडीएफ उत्पन्न करनी चाहिए, लेकिन यह केवल मानचित्र की पृष्ठभूमि उत्पन्न करता है।

wkhtmltopdf --javascript-delay 5000 http://openlayers.org/en/v3.1.1/examples/moveend.html test.pdf 

मैं क्या गलत कर रहा हूं?

  • मैं क्रोम के साथ वेब पेज खोला और एक पीडीएफ करने के लिए इसे बचाया:

    यह वही है मैं पहले ही जाँच की है। यह काम करता हैं।

  • Wireshark का पता लगाने में मैं एक टाइल छवि के लिए किसी भी अनुरोध नहीं देख सकते हैं (ताकि एक अवरुद्ध टाइल सर्वर विफलता नहीं है)।
  • मैं --background और --images तरह wkhtmltopdf पर कुछ विकल्प की कोशिश की, लेकिन कोई सफलता के साथ (ये विकल्प भी डिफ़ॉल्ट विकल्प के रूप में चिह्नित कर रहे हैं)।
  • मैं विंडोज 8 पर wkhtmltopdf 0.12.1.2 (पैच किए गए क्यूटी के साथ) का उपयोग कर रहा हूं। कोई सफलता नहीं।
  • इसके अलावा 0.12.1 wkhtmltopdf (समझौता क्यूटी के साथ) Ubuntu के 14 पर: कोई सफलता।

उत्तर

1

उपयोग खिड़की स्थिति स्विच "--window-स्थिति XXXX", आप इस जोड़ देते हैं तो पीडीएफ घटक (wkhtmtopdf) स्विच स्क्रिप्ट तैयार करने के लिए खिड़की sataus सेट के रूप में, खिड़की-की स्थिति के लिए इंतजार करेंगे जैसे ही या स्विच में दिए गए कुछ भी wkhtmltopdf एचटीएमएल को पीडीएफ में परिवर्तित करना शुरू करते हैं।

आप क्या करने की जरूरत ...। यह पता लगाने का प्रयास करें कि आपके मानचित्र कब डोम में लोड किए गए हैं और सब कुछ प्रदान किया गया है (AJAX कॉल या किसी भी लंबी चल रही स्क्रिप्ट को पूरा/सफल किया गया है) फिर window.sataus = "ready" (जावा स्क्रिप्ट का उपयोग करके)

जोड़ें स्विच "--window-स्थिति के लिए तैयार"

wkhtmltopdf --window-स्थिति के लिए तैयार http://openlayers.org/en/v3.1.1/examples/moveend.html test.pdf

+0

एक '--javascript-विलंब 5sec' सभी छवियों को लोड करने के लिए पर्याप्त इंतजार कर रहा है। तो यह probelm हल नहीं करेगा। – powerpete

+0

क्या आपने - विन्डो-स्टेटस को आजमाया था। –

+0

क्षमा करें। मैं इस समय अपने विशिष्ट मानचित्र के साथ इसका परीक्षण नहीं कर सकता। (मैंने अपना नक्शा घटक leaflet.js में बदल दिया) – powerpete

संबंधित मुद्दे