मैं लिनक्स पर कमांड लाइन से छवियों की एक श्रृंखला को पीडीएफ में कैसे बदल सकता हूं? [बन्द है]


215

मेरे पास एक स्कैनिंग सर्वर है जिसे मैंने cgi / bash में लिखा था और कमांड लाइन से पीडीएफ में छवियों का एक गुच्छा (सभी एक फ़ोल्डर में) परिवर्तित करने में सक्षम होना चाहता हूं। वह कैसे किया जा सकता है?



2
संबंधित:
यूपीईजी

7
Img2pdf का प्रयोग करें , इमेजमैजिक का नहीं। ImageMagick JPEG को डीकोड करता है, जिसके परिणामस्वरूप जेनरेशन लॉस होता है और img2pdf की तुलना में 10–100 गुना धीमा होता है।
रॉबर्ट फ्लेमिंग

1
sudo apt-get install gscan2pdf सरल और आसान उपयोग के लिए।
एम हजीक

1
img2pdf $(find . -iname '*.jpg' | sort -V) -o ./document.pdfआपको document.pdfवर्तमान dir में jpg या JPG एक्सटेंशन वाली सभी छवियां देने की सुविधा होगी - प्रति पृष्ठ एक छवि। document.pdfसभी छवियों को स्वाभाविक रूप से पृष्ठों के रूप में आदेशित किया जाएगा ( इसलिए -Vविकल्प sort) ताकि छवि फ़ाइलों को क्रमांकित करते समय किसी भी अग्रणी शून्य को जोड़ने की आवश्यकता न हो।
जिमिक्स

जवाबों:


411

Imagemagick का उपयोग करके , आप कोशिश कर सकते हैं:

convert page.png page.pdf

या कई छवियों के लिए:

convert page*.png mydoc.pdf

7
क्या होगा अगर पेज * .पीएनजी आप चाहते हैं जिस तरह से छवियों को सॉर्ट नहीं करता है? जैसे पेज_1। पेज, पेज_2.पिंग ... पेज_10.पिंग -> पेज_10 पेज 1 से पहले दिखाई देगा
vcarel

38
फ़ाइलों को सॉर्ट करने के लिए, आप उपयोग कर सकते हैं:ls page*.png | sort -n | tr '\n' ' ' | sed 's/$/\ mydoc.pdf/' | xargs convert
GaloisPlusPlus

26
FYI करें आपको लगभग कभी lsभी फाइलों को प्रदर्शित करने के अलावा किसी भी चीज़ के लिए उपयोग करने की आवश्यकता नहीं है ... अर्थात यह आउटपुट नहीं है। findअधिक उपयुक्त उपकरण है। यहाँ एक उदाहरण है convert $(find -maxdepth 1 -type f -name 'page*.png' | sort -n | paste -sd\ ) output.pdf। ध्यान रखें कि यदि आपके मार्ग में रिक्त स्थान हैं तो उपर्युक्त आदेश काम नहीं करेगा। पात्रों को जोड़ने से बचने की आवश्यकता है जो चीजों को थोड़ा अधिक जटिल बनाता है।
छह

20
यह सरल है और बहुत अच्छी तरह से काम करता है, धन्यवाद! विशाल पीडीएफ फाइलों को उत्पन्न करने से बचने के लिए, कुछ का उपयोग करेंconvert -compress jpeg -quality 85 *.png out.pdf
jlh

13
ImageMagick JPEG को डीकोड करता है, जिसके परिणामस्वरूप जनरेशन लॉस होता है । इसके बजाय img2pdf का उपयोग करें ; यह भी 10100 गुना तेज है।
रॉबर्ट फ्लेमिंग

13

Http://www.imagemagick.orgconvert से उपयोग करें । (अधिकांश लिनक्स वितरणों में पैकेज के रूप में आसानी से आपूर्ति की जाती है।)


30
ImageMagick JPEG को डीकोड करता है, जिसके परिणामस्वरूप जनरेशन लॉस होता है । इसके बजाय img2pdf का उपयोग करें ; यह भी 10100 गुना तेज है।
रॉबर्ट फ्लेमिंग

9
नोट: img2pdf में ले जाया गया gitlab.mister-muffin.de/josch/img2pdf
केल्विन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.