강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của pjparkz
pjparkz

câu hỏi đã được viết

Công thức tự động hóa Python-아래아한글 cần thiết cho nhân viên văn phòng

Mở, lưu và đóng tài liệu tiếng Hàn/tiếng Việt

hwp 페이지별 분할 저장하는 코드 관련 문의

Viết

·

307

·

Đã chỉnh sửa

0

일코님, 안녕하세요.
오랜만에 질문 올립니다.

여러 장이 있는 hwp파일의 첫 페이지부터 한 페이지 씩
1.hwp, 2.hwp, 3.hwp, ... 로 저장하는 코드를 작성해 보았는데요.

한 가지 문제점만 빼면 원하는 대로 작동합니다.

한 가지 문제점은, 코드 실행 후 저장된 1.hwp 파일 속에 1페이지가 아닌 전체 페이지가 들어가 있다는 점입니다.
그거 외에 다른 페이지는 문제 없이 작동되고 있습니다.

이거 왜 그럴까요?

코드를 반복해서 살펴봐도,
논리적으로는 저장되는 1.hwp 파일에는 원본파일의 첫 페이지만 들어가 있어야 할 거 같은데.. 그렇게 안되는 이유가 궁금합니다.

전체 코드는 아래와 같습니다.

import os
from pyhwpx import Hwp

hwp = Hwp()

target_dir = r"D:\magicfolder"
os.chdir(target_dir)

hwp.add_tab()
hwp.switch_to(0) # 탭0: 카피해 올 원본 파일용
hwp.open("D:\magicfolder\페이지분할대상.hwp")

hwp.switch_to(1) # 탭1: 한 페이지씩 붙여서 저장할 일종의 작업공간
hwp.open("D:\magicfolder\페이지분할대상.hwp")

hwp.switch_to(0)
for j in range(1, hwp.PageCount + 1):
    hwp.goto_page(j)
    hwp.CopyPage()

    hwp.switch_to(1)
    hwp.HAction.Run("SelectAll")
    hwp.HAction.Run("Delete")
    hwp.MoveDocBegin()
    hwp.PastePage()

    # 바로 위에서 hwp.PastePage()할 때 페이지가 넘어가서 붙으므로, 앞 페이지로 당겨 붙이기 위해서 맨 위 페이지로 커서 옮기고 Del 2번 해 준 것임.
    hwp.MoveDocBegin()
    hwp.HAction.Run("Delete")
    hwp.HAction.Run("Delete")

    hwp.save_as(target_dir + "\\" + str(j) + ".hwp")
    hwp.switch_to(0)
hwp.Close()

hwp.FileClose()

 

코드를 많이 짜봐야 늘텐데 정말 오랜만에 시도해 본 거 같습니다. ^^ㅋ

python한컴오피스레벨업

Câu trả lời

Câu hỏi này đang chờ câu trả lời
Hãy là người đầu tiên trả lời!
Hình ảnh hồ sơ của pjparkz
pjparkz

câu hỏi đã được viết

Đặt câu hỏi