पिछली बार जब मैंने convert
ऐसे कार्य के लिए उपयोग किया था तो मैंने स्पष्ट रूप से आकार के माध्यम से गंतव्य का आकार निर्दिष्ट किया था:
$ i=150; convert a.png b.png -compress jpeg -quality 70 \
-density ${i}x${i} -units PixelsPerInch \
-resize $((i*827/100))x$((i*1169/100)) \
-repage $((i*827/100))x$((i*1169/100)) multipage.pdf
convert
आदेश हमेशा का उपयोग नहीं करता डीपीआई डिफ़ॉल्ट घनत्व / पेज प्रारूप इकाई के रूप में, इस प्रकार हम स्पष्ट रूप से डीपीआई निर्दिष्ट -units
विकल्प (अन्यथा आप विभिन्न संस्करणों / इनपुट प्रारूप संयोजनों के साथ अलग अलग परिणाम प्राप्त हो सकते हैं)। नया आकार (के माध्यम से निर्दिष्ट -resize
) पिक्सेल में एक डीआईएन ए 4 पृष्ठ का आयाम है । आकार परिवर्तन तर्क अधिकतम पृष्ठ आकार निर्दिष्ट करता है। क्या संकल्प और गुणवत्ता वास्तव में लेने के लिए उपयोग के मामले पर निर्भर करता है - मैंने 150 डीपीआई और औसत गुणवत्ता का चयन किया ताकि कुछ जगह को बचाया जा सके, जबकि यह कागज पर मुद्रित होने पर बहुत बुरा नहीं लगता है।
ध्यान दें कि convert
डिफ़ॉल्ट रूप से आकार परिवर्तन के साथ पहलू अनुपात नहीं बदलता है:
आकार आकार में अनुरोधित आकार में फिट होगा। यह भरा हुआ बॉक्स आकार नहीं देता है।
( ImageMagick मैनुअल )
ImageMagick संस्करण और शामिल इनपुट प्रारूपों के आधार पर -repage
विकल्प को छोड़ना ठीक हो सकता है। लेकिन कभी-कभी इसकी आवश्यकता होती है और उस विकल्प के बिना पीडीएफ हेडर में बहुत छोटे आयाम हो सकते हैं। किसी भी मामले में, -repage
चोट नहीं पहुंचनी चाहिए।
कम्प्यूटेशन पूर्णांक अंकगणित का उपयोग करते हैं क्योंकि bash
केवल उसी का समर्थन करता है। zsh
अभिव्यक्तियों के साथ सरलीकृत किया जा सकता है - यानी के साथ बदल दिया $((i*8.27))x$((i*11.69))
।
रैखिक छवियाँ
यदि PNG फाइलें द्वि-स्तरीय (काले और सफेद उर्फ रेखीय) चित्र हैं तो img2pdf
टूल ImageMagick पर बेहतर परिणाम देता है convert
। इसका मतलब img2pdf
है कि तेजी से और छोटे पीडीएफ पैदावार है।
उदाहरण:
$ img2pdf -o multipage.pdf a.png b.png
या:
$ img2pdf --pagesize A4 -o multipage.pdf a.png b.png
-repage a4
मुझेinvalid argument for option '-repage': a4