본문 바로가기

분류 전체보기465

2. 필드 사용하여 문서 완성하기 보호되어 있는 글 입니다. 2022. 10. 31.
1-8. 한/글 파일의 문서 정보 갱신하기 보호되어 있는 글 입니다. 2022. 10. 30.
1-7. 한/글 파일의 문서 정보 취득하기 보호되어 있는 글 입니다. 2022. 10. 29.
[QnA] 맞춤법 자동교정시 표시해 두기 안녕하세요 일상의 코딩님!! 유튜브를 통해서 알게되고 블로그까지 찾아왔습니다. 블로그의 유익한 글들로 많은 도움을 받고 있는데요... 아무리 찾아봐도 도저히 제 능력 밖이라 ... 바쁘실텐데 여쭙고자 합니다. ㅠㅠ 아래한글에서 맞춤법 교정을 자동으로 하는 코드를 만들고 싶은데 단순히 맞춤법 검사기로 교정하는 것은 어절단위로 돌면서 Run으로 작동은 시키는데 맞춤법 교정을 한 부분을 글자나 음영색을 바꿔서 어떤 부분을 교정했는지 표시를 하고 싶은데요 교정이 되고 나니 빨간줄도 사라지고,,, 그위치를 찾는 것도... 방법이 없는거 같아서요 도움을 요청합니다. ㅠㅠ 어떻게 방법이 없을까요... ㅠㅠ 헤매고 있는 절 구해주세요 ㅠㅠㅠㅠㅠ 질문 주신 분께서는 나름 한/글 메서드를 잘 활용하고 계신 분 같아요. 어.. 2022. 10. 28.
[8/8] 여러 한/글 문서에서 이미지 추출(최종) 메인함수 if __name__ == '__main__': hwp = 한글프로그램_실행() 취합폴더 = Path(r"C:\Users\smj02\Desktop\취합문서") 한글문서리스트 = 취합폴더.glob("*.hwp") for 한글문서 in 한글문서리스트: 문서열기(한글문서) 제목리스트, 제목함수 = 제목뽑기() 제목폴더_만들기(제목리스트) 이미지저장(제목함수) 현재문서닫기() 한글프로그램_종료() 이 메인함수는 이 튜토리얼 시작 때 미리 보여드렸습니다. 여기까지 오는 동안 필요한 모든 함수를 하나씩 정의해봤으니, 이제는 위 메인함수의 프로세스를 어느 정도 파악을 하셨을 거라고 생각합니다. 그럼 앞에서 정의한 함수들을 포함한 전체 소스코드를 보여드리고 실행결과를 보여드리겠습니다. 전체 소스코드 from .. 2022. 10. 25.
[7/8] 특정 이름으로 이미지 저장하기 def ctrl로_이동하기(ctrl): loc_set = ctrl.GetAnchorPos(0) hwp.SetPosBySet(loc_set) def 이미지저장(제목함수): ctrl = hwp.HeadCtrl # 첫 번째 컨트롤부터 탐색 이미지번호 = 1 이전제목 = "" while ctrl != None: if ctrl.CtrlID == "gso": # "그림"이면 ctrl로_이동하기(ctrl) hwp.Run("CloseEx") # 표 안에 있는 경우, 표 밖으로 나옴 제목 = 제목함수(hwp.GetPos()[1]) if 이전제목 != 제목: 이미지번호 = 1 # 폴더별로 1번부터 시작하기 위함 이전제목 = 제목 ctrl로_이동하기(ctrl) hwp.FindCtrl() hwp.HAction.Run("Pic.. 2022. 10. 25.
[6/8] 제목리스트로 하위폴더 만들기 이번 포스팅은 짧게 설명드리고 마치겠습니다. from pathlib import Path def 제목폴더_만들기(title_list): for title in title_list: Path.mkdir(취합폴더/"취합사진"/title, parents=True, exist_ok=True) 취합폴더 = Path(r"C:\Users\smj02\Desktop\취합문서") 제목리스트, _ = 제목뽑기() 제목폴더_만들기(제목리스트) 위 코드를 복붙해서 실행해보면, 취합폴더 하위에 "취합사진"이라는 폴더가 생성되고, 그 아래에 제목리스트의 각 제목 이름으로 빈 하위폴더들을 생성했습니다. 폴더생성 작업은 pathlib.Path 클래스를 활용했습니다. Path().mkdir 메서드의 파라미터 중 parents=True는.. 2022. 10. 25.
[5/8] 문서에서 제목 추출하기 이전 포스팅까지는 이미지를 저장하는 프로세스를 구현해보았습니다. 이번 포스팅부터는 문단제목을 추출하는 작업을 해보겠습니다. 기본적으로 한/글 프로그램은 찾기/찾아바꾸기 기능이 잘 구현되어 있습니다. 매크로 추출을 해 보면, 다양한 옵션도 활용이 가능하고요. 그런데, 탐색한 문자열을 파이썬으로 추출해서 활용하려면 번거로운 추가작업이 필요합니다. 이를테면, 문단의 끝까지 추가선택한 후, 복사해서 클립보드로 옮기고 파이썬으로 클립보드의 문자열을 추출해야 한다든지요. 번거롭습니다. 그런데 한/글에서는 이런 일련의 과정을 간결하게 덜어주는 GetText라는 메서드가 존재합니다. GetText, 한/글 자동화 고급과정의 첫걸음① (tistory.com) GetText, 한/글 자동화 고급과정의 첫걸음① 안녕하세요?.. 2022. 10. 25.
[4/8] 캐럿을 개체 앞으로 이동하는 방법 이전 포스팅에서 hwp.FindCtrl()을 실행하면 캐럿과 인접한 개체(이미지)가 선택되는 것을 보여드렸습니다. 이 시점부터는 "개체"라는 용어 대신 "컨트롤(Ctrl)"이라는 용어를 사용하겠습니다. 한/글 내부적으로 통용되는 용어이니 익숙해지시길 바랍니다. 그런데, 캐럿을 컨트롤(표, 이미지, 차트 등) 앞으로 옮기려면 어떻게 해야 할까요? 모든 컨트롤은 연결되어 있기 때문에 우선 한/글 문서의 모든 컨트롤들은 "linked list"라는 자료형으로 모두 연결되어 있습니다. 그래서, 특정 컨트롤을 선택하려면 문서의 첫 번째 컨트롤인 hwp.HeadCtrl이나 마지막 컨트롤인 hwp.LastCtrl에서부터 시작해서 Next 또는 Prev 명령어로 순차적인 탐색을 해야 합니다. 현재 탐색중인 컨트롤의 타.. 2022. 10. 25.