일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 사무실
- Finale2009
- 시벨리우스5
- 오블완
- 피날레2009
- 오픈수세 11.1
- 오픈수세
- 사보
- 오픈소스
- OpenSuSE
- 수세
- 피날레
- 티스토리챌린지
- sibelius5
- Finale2005
- 미디
- Linux
- 리눅스
- 시벨리우스
- 오픈수세 11.2
- sibelius4
- synology
- Nas
- MIDI
- 나스
- 네트워크
- 시놀로지
- 시벨리우스4
- openSUSE 11.2
- 피날레2005
Archives
- Today
- Total
오브리닷넷(Obbli.net)
PDF 페이지 순서 뒤집기(feat. 파이썬) 본문
반응형
PDF 의 페이지가 뒤집혀 있을때 역순으로 다시 뒤집는 파이썬 소스를 작성했다.
아래 소스를 reverse_pdf.py 으로 저장하고
from PyPDF2 import PdfFileWriter, PdfFileReader
import sys
def pages(src, dst):
src_f = file(src, 'r+b')
dst_f = file(dst, 'w+b')
input_pdf = PdfFileReader(src_f)
total_pages = input_pdf.getNumPages()
output_pdf = PdfFileWriter()
for page in range(total_pages - 1, -1, -1):
output_pdf.addPage(input_pdf.getPage(page))
output_pdf.write(dst_f)
src_f.close()
dst_f.close()
if len(sys.argv) < 3:
print("\nusage:\n$ python2 reverse_pdf.py input.pdf output.pdf")
sys.exit()
input_file = sys.argv[1]
output_file = sys.argv[2]
pages(input_file, output_file)
다음과 같은 사용방법으로 실행시키면
python2 reverse_pdf.py 뒤집기전PDF파일명.pdf 뒤집은후PDF파일명.pdf
많은 PDF 파일을 한 번에 변환할 수 있다.
아래는 일괄 변환 즉석 사용명령(변환할 PDF와 변환 파이썬 소스는 같은 폴더에 위치해야 한다.)
mkdir reverse; for file in *.pdf; do python2 revers-pdf.py "$file" "$file-reverse.pdf"; mv ./*-reverse.pdf ./reverse; done;
반응형