Vintage appMaker의 Tech Blog

[codex] pdf 에디팅하기 본문

Source code or Tip/생성AI

[codex] pdf 에디팅하기

VintageappMaker 2025. 12. 5. 10:31

pdf 내용을 수정한다. 페이지 순서를 바꾼다. 페이지를 이미지로 변환한다.

codex가 실행되는 폴더에 주식공부.pdf를 저장한다.

주식공부.pdf
1.85MB

 

 

 

데스크탑에는 Python이 설치되어 있어야 한다.

1. 요청 프롬프트

- 현재 폴더의 주식공부.pdf를 읽어와서 각 페이지별로 .jpg 파일로 저장한다.
- 그리고 1번페이지와 3번 페이지의 순서를 바꾸어 주식공부_변환.pdf로 저장한다.
- 작업한 소스가 있다면 삭제하지 않는다.

2. 수행 과정

  1. Python(Pillow/fitz, 이미 설치되어 있던 PyMuPDF)을 이용해 변환 스크립트 convert_pdf.py 작성.
  2. 스크립트 내용: 모든 페이지를 200dpi JPEG로 저장 후, 페이지 순서 리스트에서 1번(0 index)과 3번(2 index)을 교환하여 새 PDF 주식공부_변환.pdf 생성.
  3. 실행 명령: python convert_pdf.py
  4. 결과: 주식공부_page_*.jpg 일괄 생성, 교환된 페이지 순서로 주식공부_변환.pdf 생성. 기존 주식공부.pdf와 스크립트는 그대로 유지.

3. 생성 소스

import fitz
from pathlib import Path

pdf_path = Path('주식공부.pdf')

doc = fitz.open(pdf_path)
for i, page in enumerate(doc, start=1):
    pix = page.get_pixmap(dpi=200, alpha=False)
    out_name = pdf_path.stem + f'_page_{i}.jpg'
    pix.save(out_name)

doc.close()

src = fitz.open(pdf_path)
order = list(range(src.page_count))
if src.page_count >= 3:
    order[0], order[2] = order[2], order[0]

result = fitz.open()
for idx in order:
    result.insert_pdf(src, from_page=idx, to_page=idx)

result.save('주식공부_변환.pdf')
result.close()
src.close()

 

4. 생성 결과

결과.zip
3.80MB

Comments