मैंने वेब पृष्ठों से पीएनजी छवियां उत्पन्न करने के लिए फ़ैंटॉमजेएस का उपयोग किया है और यह पीडीएफ भी उत्पन्न कर सकता है और गुणवत्ता आमतौर पर अच्छी होती है। संपत्ति को स्क्रीन कैप्चर कहा जाता है और here वर्णित किया जाता है। समर्थित प्रारूप पीएनजी, जेपीईजी, जीआईएफ और पीडीएफ हैं।
पीडीएफ में परिवर्तित होने पर, पृष्ठों के ग्रंथ ग्रंथों के रूप में बनाए जाते हैं।
कुछ अन्य पुस्तकालयों या कार्यक्रमों के परीक्षण के बाद, फैंटॉमजेएस सबसे सही समाधान मिला। फैंटॉमजेएस वेबकिट, एक वास्तविक लेआउट और प्रतिपादन इंजन का उपयोग करता है।
कुछ उदाहरण https://github.com/ariya/phantomjs/wiki/Examples में हैं।
rasterize.js rasterizes a web page to image or PDF
PhantomJS QuicStart Guide का कहना है::
उत्पादन पीडीएफ उत्पादन संभव है, उदाहरण के लिए खंड प्रतिपादन/रैस्टराइज़ेशन में वहाँ निम्न स्क्रिप्ट है कि आप इस प्रक्रिया में मदद करता है उल्लेख किया गया है एक विकिपीडिया लेख से:
phantomjs rasterize.js 'http://en.wikipedia.org/w/index.php?title=Jakarta&printable=yes' jakarta.pdf
या प्रिंटर के लिए तैयार की नकल पुस्तिकाओं बनाते समय:
phantomjs rasterize.js http://www.nihilogic.dk/labs/webgl_cheat_sheet/WebGL_Cheat_Sheet.htm webgl.pdf
मैं कुछ पन्नों की पीडीएफ पीढ़ी का परीक्षण किया और अगर पेज मानकों का पालन, यह अच्छे परिणाम पैदा करता है। टेक्स्ट उच्च गुणवत्ता वाले चयन योग्य और प्रिंट करने योग्य है, लेकिन कुछ पृष्ठों पर पीडीएफ में लेआउट पीएनजी जैसा ही नहीं है।
$ phantomjs rasterize.js 'http://windows.microsoft.com/en-US/windows/home' microsoft.png
$ phantomjs rasterize.js 'http://windows.microsoft.com/en-US/windows/home' microsoft.pdf
मैं भी http://lab.simurai.com/buttons/ परीक्षण किया: नीचे दो स्क्रीनशॉट जो आदेशों का उपयोग करते उत्पन्न कर रहे हैं है। पीडीएफ और पीएनजी बहुत समान थे और नीचे पीडीएफ का एक नमूना है जिसे मैंने 5641 पीएक्स चौड़ा कर दिया और इसके एक क्षेत्र को फसल लगाया। पिछले पीडीएफ उदाहरण के रूप में, पाठ पीडीएफ में चयन योग्य है और जैसा कि आप देखते हैं, पाठ तेज है (कोई एंटीअलाइज़ नहीं है!)।
मैं CentOS5 स्रोत से संकलन पर क्यूटी पुस्तकालय और PhantomJS स्थापित करने के लिए पहले की कोशिश की, लेकिन कोई किस्मत की स्थापना करना। तब उबंटू 11.10 पर और इस प्रक्रिया दर्दरहित था:
मैं http://phantomjs.googlecode.com/files/phantomjs-1.7.0-linux-x86_64.tar.bz2 डाउनलोड किया है और
tar -xjvf phantomjs-1.7.0-linux-x86_64.tar.bz2
का उपयोग कर इसे निकाला और फिर प्रणाली के बिन निर्देशिका के लिए निष्पादन योग्य प्रतिलिपि बनाई phantomjs:
$ cp phantomjs-1.7.0-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs
और phantomjs तैयार था चलाने के लिए।
यदि जेनरेट किया गया पीडीएफ अच्छा नहीं है, तो आप वेबकिट अपडेट करने का प्रयास कर सकते हैं, लेकिन मुझे लगता है कि परिणाम पर्याप्त होना चाहिए। फैंटॉमजेएस में उत्कृष्ट अद्यतन चक्र है, इसलिए उचित समय में बग को ठीक किया जाना चाहिए।
PhantomJS FAQ में संभावनाओं की अच्छी जानकारी भी है।
यह अभी भी बंद क्यों है ?? प्रत्येक प्रश्न इस से अधिक "बहस बहस, तर्क, मतदान, या विस्तारित चर्चा" का कारण बनता है। –
wkhtml2pdf अब * करता है * कैनवास प्रस्तुत करता है ... wkhtmltopdf.org देखें। Wkhtml2pdf के लिए अंगूठे ... fop –