पीडीएफ पृष्ठों को घुमाएं: 90 पृष्ठों के लिए और विषम पृष्ठों के लिए -90 डिग्री


27

मैं एक पीडीएफ़ फ़ाइल में सोच रहा था कि पीडीएफ पृष्ठों को कैसे घुमाया जाए: पृष्ठों के लिए 90 डिग्री और विषम पृष्ठों के लिए -90 डिग्री?

Pdftk द्वारा, मुझे पता है कि एक पृष्ठ को घुमाना है pdftk in.pdf cat 1W output out.pdf, और सभी पृष्ठों को घुमाना है pdftk in.pdf cat 1-endW output out.pdf

धन्यवाद!


FYI करें: नए pdftk संस्करणों के लिए, सिंटैक्स है: pdftk in.pdf cat 1-endwest output out.pdfयानी के westबजाय Wया के southबजाय S...
colidyre

जवाबों:


11

यह pdftk 1.44 के बाद से आसान है जिसने shuffleऑपरेशन को विषम और यहां तक ​​कि पृष्ठों (अन्य उपयोगों के बीच) पर विभिन्न परिवर्तनों की अनुमति दी।

यदि आपके पास pdftk का पुराना संस्करण है, तो आप PyPdf लाइब्रेरी के साथ इस पायथन स्क्रिप्ट का उपयोग कर सकते हैं । (चेतावनी, सीधे ब्राउज़र में टाइप की गई।)

#!/usr/bin/env python
import sys
from pyPdf import PdfFileWriter, PdfFileReader
input = PdfFileReader(sys.stdin)
output = PdfFileWriter()
for i in range(0,input.getNumPages()):
    output.addPage(input.getPage(i).rotateClockwise(90 if i%2==0 else -90))
output.write(sys.stdout)

30

साथ pdftkसंस्करण 1.45 (6 दिसंबर 2012) या बाद में, उपयोग करें:

pdftk A=MyPdfFile.pdf shuffle AoddWest AevenEast output MyRotatedFile.pdf

यदि आपके पास pdftkसंस्करण १.४४ है ( यह इंगित करने के लिए गिल्स का धन्यवाद! ), तो आप उपयोग कर सकते हैं:

pdftk A=MyPdfFile.pdf shuffle AoddL AevenR output MyRotatedFile.pdf

कुछ इसी तरह के उदाहरण मामलों में वर्णित हैं man pdftk(कम से कम हाल के संस्करणों में)।


1

गिलेस के जवाब में सुधार के रूप में :

#!/usr/bin/env python
import sys
from pyPdf import PdfFileWriter, PdfFileReader
input = PdfFileReader(open(sys.argv[1], "rb"))
output = PdfFileWriter()
for i in range(0,input.getNumPages()):
    output.addPage(input.getPage(i).rotateClockwise(90 if i%2==0 else -90))
output.write(open(sys.argv[2], "wb"))

जहां प्रोग्राम इनपुट और आउटपुट फ़ाइल के कमांड लाइन तर्कों को स्वीकार करता है: python script.py <inputFileName> <outputFileName>

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