मैं पीडीएफ फाइल को खोलने के लिए एक ओपन सोर्स कमांड लाइन टूल की तलाश कर रहा हूं जैसे हम एडोब एक्रोबेट प्रो में कर सकते हैं। मैंने PdfTk, ImageMagick, PyPDF, और GhostScript की कोशिश की है - अब तक कोई सफलता नहीं मिली है।
मैं पीडीएफ फाइल को खोलने के लिए एक ओपन सोर्स कमांड लाइन टूल की तलाश कर रहा हूं जैसे हम एडोब एक्रोबेट प्रो में कर सकते हैं। मैंने PdfTk, ImageMagick, PyPDF, और GhostScript की कोशिश की है - अब तक कोई सफलता नहीं मिली है।
जवाबों:
मेरा सुझाव है कि आप PDFcrop पर एक नज़र डालें ।
यदि आप 5, 10, 20, और 30 pt (अंक) के साथ बाएं, ऊपर, दाएं और नीचे मार्जिन के साथ एक पीडीएफ फसल करना चाहते हैं, तो चलाएं
pdfcrop --margins '5 10 20 30' input.pdf output.pdf
टर्मिनल में। वास्तव में कुछ दूर फसल के लिए, फसल के तर्क में नकारात्मक मूल्यों का उपयोग करें। उदाहरण के लिए,
pdfcrop --margins '-50 -50 -50 -50' input.pdf output.pdf
बाएं, ऊपर, दाएं, नीचे (इस क्रम में) से 50 पीटी की फसल।
यदि आप केवल कमांड चलाते हैं pdfcrop input
, तो यह शून्य मार्जिन के साथ इनपुट-क्रॉप.पीडीएफ नामक एक फाइल को आउटपुट करेगा । मुझे यह बहुत उपयोगी लगता है जब दस्तावेजों में पीडीएफ चित्रण शामिल हैं।
कई फ़ाइलों को काट रहा है
दुर्भाग्य से, pdfcrop समय पर कई फ़ाइलों को क्रॉप नहीं कर सकता है। हालाँकि ऐसी स्क्रिप्ट लिखना आसान है जो स्क्रिप्ट में स्थित फ़ोल्डर में सभी pdfs को क्रॉप करेगी।
एक नई खाली फ़ाइल बनाएं, और उसे कॉल करें something.sh
। इसे टेक्स्ट एडिटर से खोलें और निम्नलिखित डालें:
#!/bin/bash
for FILE in ./*.pdf; do
pdfcrop "${FILE}"
done
इसे सहेजें, और बंद करें। फिर फ़ाइल पर राइट क्लिक करें, गुण> अनुमतियों पर जाएं और फ़ील्ड जांचें कार्यक्रम के रूप में फ़ाइल निष्पादित करने की अनुमति दें । अब संवाद बंद करें। स्क्रिप्ट को डबल क्लिक करके चलाएँ और टर्मिनल में रन चुनें । और नए, शून्य मार्जिन प्रत्यय के साथ सभी pdfs के संस्करण काटी -Crop अब फ़ोल्डर में प्रिंट किया जाएगा। यदि आप मार्जिन या अन्य चीजें चाहते हैं, तो आप निश्चित रूप से स्क्रिप्ट खोल सकते हैं और बाद में तर्क जोड़ सकते हैं pdfcrop
।
--bbox "<left> <bottom> <right> <top>"
। यह नीचे मेरे जवाब में वर्णित फसल क्षेत्र को निर्धारित करने के लिए दृष्टिकोण का उपयोग करने की अनुमति देता है ।
pdfcrop --help
उपलब्ध विकल्पों को सूचीबद्ध करता है। मैं वहाँ कुछ भी नहीं देख सकता है जो पृष्ठों की एक श्रृंखला को निर्दिष्ट करने की अनुमति देगा।
रासमस के लिए धन्यवाद, आप टेक्सक्लाइव-एक्स्ट्रा-बर्तन पैकेज से pdfcrop स्थापित कर सकते हैं:
sudo apt-get install texlive-extra-utils
फिर पीडीएफ फसल कमांड का उपयोग करके पीडीएफ फाइलों को क्रॉप करें:
pdfcrop input.pdf output.pdf
--help
अधिक अद्भुत मापदंडों को देखने के लिए उपयोग करें--margins
pdfcrop --margins 5 input.pdf output.pdf
पृष्ठ के प्रत्येक पक्ष से 5 बीपी के साथ कौन सी फसल पीडीएफ
gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS="/ebook" -sOutputFile=output2.pdf output.pdf
बाद में करना पड़ा , जिसने फ़ाइल का आकार तय किया।
आप बस घोस्टस्क्रिप्ट का उपयोग करके पीडीएफ फाइलों को भी क्रॉप कर सकते हैं। मैंने प्रक्रिया को सरल बनाने के लिए एक छोटी सी पटकथा लिखी है ( इस उत्तर से प्रेरित ):
#!/bin/bash
if [ $# -lt 5 ]
then
echo "Usage: `basename $0` <pdf-file> <x_min> <x_max> <y_min> <y_max>"
echo "Notes:"
echo " - all coordinates are absolute; no calculation of width/height necessary"
echo " - use 'gv' to determine the coordinates"
exit 65
fi
file="$1"
xmin="$2"
xmax="$3"
ymin="$4"
ymax="$5"
base="${file%.*}"
outfile="${base}_cropped.pdf"
echo "writing to: $outfile"
gs \
-o $outfile \
-sDEVICE=pdfwrite \
-c "[/CropBox [$xmin $ymin $xmax $ymax] /PAGES pdfmark" \
-f $file
क्रॉपिंग के लिए निर्देशांक निर्धारित करने के लिए, मैं उपयोग करता हूं gv
, जो घोस्टस्क्रिप्ट के समान इकाइयों का उपयोग करके माउस कर्सर के निर्देशांक को प्रिंट करता है। उदाहरण के लिए, यहां मैं x / y के लिए न्यूनतम निर्देशांक निर्धारित करता हूं (ऊपरी बाएं कोने में मान):
अब अधिकतम निर्देशांक:
और अंत में, मैं स्क्रिप्ट का pdf_crop_by_coordinates.sh test.pdf 45 429 38 419
निर्माण करता हूं, test_cropped.pdf
जो इस तरह दिखता है:
हालांकि pdfcrop
गुणवत्ता और शुद्धता के मामले में घोस्टस्क्रिप्ट समाधान की तुलना कैसे की जाती है, इसका मुझे कोई अंदाजा नहीं है ।
जब मैं pdftk के साथ कुछ नहीं कर सकता, तो अगली जगह मैं PDFjam है , जो कि pdfpages LaTeX पैकेज के लिए एक कमांड-लाइन रैपर है (इसलिए आपको इसकी आवश्यकता भी है और एक TeX distro स्थापित है)। इसका उपयोग करने के तरीके के बारे में मदद के लिए, मैं नियमित सहायता स्क्रीन की सलाह देता हूं:
pdfjam --help
जैसा कि मैन पेज विरल है और वेब पेज उदाहरणों पर केंद्रित है।
PDF क्रॉप करने के लिए, आपको जिस कमांड की आवश्यकता है वह कुछ इस प्रकार है:
pdfjam --keepinfo --trim "10mm 15mm 10mm 15mm" --clip true --suffix "cropped" input.pdf
यह नामक एक फ़ाइल आउटपुट करेगा input-cropped.pdf
। ट्रिम्स के आदेश के अनुसार छोड़ दिया जाना चाहिए, नीचे, दाएं, ऊपर, \includegraphics
से graphicx ।
PDFcrop के साथ इसकी तुलना कैसे की जाती है, इसका अंदाजा लगाने के लिए, मैंने हाल ही में एक काफी फैंसी पीडीएफ क्रॉप किया था। मेरा मूल 675 kB था, PDFjam के माध्यम से मेरा क्रॉप्ड वर्जन 1.2 एमबी था, जबकि पीडीएफक्रॉप के माध्यम से क्रॉप किया गया संस्करण 4.5 एमबी था। जबकि पीडीएफजैम और पीडीएफक्रॉप दोनों ने एम्बेडेड हाइपरलिंक्स और बुकमार्क को छीन लिया, --keepinfo
विकल्प के साथ पीडीएफजाम ने दस्तावेज गुणों (जैसे शीर्षक, लेखक, विषय) को संरक्षित किया।
यदि एक ग्राफिकल टूल भी ठीक है तो मैं सिफारिश करूंगा krop
: http://arminstraub.com/software/krop
यह आपकी मदद कर सकता है।
यह उबंटू और जीवन के नए संस्करण के अनुसार है। यह मास्टर पीडीएफ संपादक है । आप इसे फसल का उपयोग कर सकते हैं, कुछ सामान जोड़ सकते हैं, आदि।
आप इस पृष्ठ से एक pypdf स्क्रिप्ट का उपयोग कर सकते हैं । लेकिन इस स्टैकएक्सचेंज प्रश्न के उत्तर में , कई विकल्प भी प्रतीत होते हैं।
PdfCropMargins कार्यक्रम एक कमांड लाइन आवेदन स्वचालित रूप से पीडीएफ फाइलों के हाशिये फसल है।
यह प्रोग्राम या तो घोस्टस्क्रिप्ट प्रोग्राम या सिस्टम पर स्थापित किए जा रहे pdftoppm प्रोग्राम (और लोकेबल) पर निर्भर करता है। और थ्रेशोल्ड 191 का उपयोग करके बाउंडिंग बॉक्स खोजने के लिए पीआईएल के साथ पेज इमेज का विश्लेषण करें।
का उपयोग कर स्थापित करें
पाइप स्थापित करें pdfCropMargins
का उपयोग कर चलाएं
पीडीएफ-फसल-मार्जिन -v -s -u your-file.pdf
मदद के लिए
पीडीएफ-फसल-मार्जिन -एच | अधिक