본문 바로가기

회사원코딩50

파이썬으로 한/글 프로그램이 현재 "쪽윤곽 보기" 상태인지 확인/설정하는 방법 한/글 문서를 다루시는 분들 중에는 아마 솔루션 관련해서 일하시는 분들인가 싶은데 문서 데이터가 아니라, "쪽윤곽 보기 상태"나, "오탈자의 붉은 줄 없애기" 같은 내용으로 종종 질문 주실 때가 있어요. 이런 내용들이 API문서에 장황하게 설명되어 있지는 않지만, 꼼꼼히 읽어보면 대부분 해결책이 나오기는 하거든요. 위 질문, "쪽윤곽 보기 상태 확인" 같은 경우도 API문서와 스크립트 녹화로 간단히 체크 가능해요. 한 번 확인해볼까요? 한/글을 열고 Ctrl-G-L을 여러 번 눌러보면, 아래는 쪽윤곽 보기 상태, 아래는 쪽윤곽 숨김 상태예요. 액션테이블 문서를 읽어보면 쪽윤곽을 토글하는 명령어는 ViewOptionPaper라고 하네요. hwp.HAction.Run("ViewOptionPaper") 그런데.. 2022. 2. 2.
[Q&A](2/3) 제목을 {문서첫줄}.hwp로 저장하는 가장 쿨한 방법 안녕하세요? 일상의 코딩, 일코입니다. 두 번째 시간입니다. 지난 시간에는 한/글을 열지 않고도 첫 줄을 불러오는 함수를 소개해드렸습니다. def 첫줄읽기(filepath): """한/글 문서 텍스트를 불러와서 엔터(\r\n)로 쪼갠 후 첫 번째 행 리턴""" with OleFileIO(filepath) as ole: # 한/글 파일 불러오기 text = ole.openstream('PrvText').read().decode('UTF-16').split("\r\n")[0] return text 이번에는 이 함수를 활용해서 파일들의 이름을 일괄 변경하는 프로그램을 만들어보겠습니다. 기존 파일목록은 아래와 같습니다. GUI를 열어서 파일목록을 선택한 후, 선택한 파일들의 PrvText 첫 번째 라인을 불러와.. 2022. 1. 14.
[Q&A](1/3) 제목을 {문서첫줄}.hwp로 저장하는 가장 쿨한 방법 안녕하세요? 일상의 코딩, 일코입니다. 질문을 읽어보니 대략 이런 상황인 것 같습니다. 1. 아래와 같은 내용의 파일이 있고, 2. 이걸 아래와 같이 만들고 싶으신 것 같습니다. 여기서 잠깐 이 생각을 해 봅시다. 여러분은 아래 두 가지 중 어떤 게 좋은 방식이라고 생각하시나요? (물론 호불호일 뿐, 정답은 없다고 생각합니다.) ① 따로따로 만들어 각각 실행하기!? 우선 다 잘라서 저장하는 프로그램을 하나 만들고, 파일명을 변경하는 프로그램을 별도로 만든다. 예를 들면 간단히 페이지 번호대로 1.hwp, 2.hwp, 3.hwp ... 저장하는 식으로. 그 후에 파일명을 변경하는 코드를 따로 만든다. (1.hwp부터 하나씩 열어서 "첫 번째 페이지입니다.hwp" 방식으로) ② 원클릭으로 끝까지 한 번에!?.. 2022. 1. 14.
한/글 매크로의 with (xxx) {yyy} 문법은 파이썬으로 어떻게 바꾸나요? 질문주신 내용은, 안녕하세요. 포스팅 해주신 내용이 제 업무에 엄청나게 도움이 될 내용이어서 정말로 감사드립니다. (주로 필요할때마다 한글매크로 만들어서 사용중입니다) 첫번째로 말씀해주신 방법(매크로 코드를 파이썬으로 옮겨서 중괄호, 세미콜론 등 지우고 hwp. 붙여주는 방법)으로 시도중인데요 다음 코드(한글 매크로 코드편집 내용)에서 ***로 표시한 부분을 파이썬에서 어떻게 바꿔야 할 지 모르겠어서 여쭤봅니다. 혹시나 시간 편하실때로 답변주시면 정말로 감사드리겠습니다. 아래 매크로 코드 내용은 '마침표를 찾아서 엔터(=문단끝) 두번 입력' 입니다. { HAction.GetDefault("FindDlg", HParameterSet.HFindReplace.HSet); with (HParameterSet.H.. 2022. 1. 3.
2021년 업무자동화 콘텐츠 제작 계획(회사원코딩) 안녕하세요? 회사원코딩입니다. 몇 년 전부터 파이썬-아래아한글 자동화 예제를 틈틈이 만들어 업로드하고 있었지만, 뭔가 모자라다는 마음이 컸습니다. 바로, 입문자가 학습할 수 있는 콘텐츠가 부족하다는 점이었는데요. 어느 정도 코딩이나 업무자동화를 현업에 적용하시는 분들은, 나름의 인사이트를 얻어가실 수 있었겠지만, 코딩이나 아래아한글 API 입문자를 대상으로 하는 콘텐츠는 현저히 부족하다고 생각만(...) 했는데, 8월부터 갑자기 여유시간이 많아지게 되어서, 구상만 해 왔던 몇 가지 굵직한 기획을 한 번에 진행하게 되었습니다. 1. 한/글 API 전체 메서드 및 실행화면 정리, 작성중(링크, 2021년 내 완성예정) 2. 예제를 통한 한/글 자동화 개념이해 시리즈1~3(예시링크, 입문자 대상, 위와 병행하.. 2021. 8. 1.
오랫동안 써오던 도메인을 버려야 하나.. https://www.martinii.fun 이라는 도메인을 오랫동안 써오고 있었습니다. 블로그 원래 주소는 https://employeecoding.tistory.com인데, 그냥 원래 티스토리 도메인만 사용할까 고민이 됩니다. 구글검색창 상위노출이 아깝지만ㅜ 오늘부로 martinii.fun 도메인을 쓰지 않기로 했다가, 가비아의 문의메일이 너무 신속하고 친절해서ㅠㅠㅜ 결제한 동안은 쓰기로 했습니다. https://martinii.fun 이나, https://employeecoding.tistory.com 회사원코딩 제 블로그, 회사원코딩에 방문해 주셔서 감사합니다. 저는 2016년부터 파이썬을 취미로 배우고 있습니다. 아래아한글이나 엑셀업무에 코딩을 적용하여 개선한 사례를 유튜브로 공유하고 있고, m.. 2021. 7. 14.
파이썬으로 한/글의 용지규격과 방향을 조회할 때 현재 용지속성을 조회만 하고 싶다면? 안녕하세요 한글문서관련 프로그램을 작성하는 개발자 입니다. 우연히 한컴 개발커뮤니티에서 “현재 용지정보 가져오기 PageSetup” 관련 답변을 달아 놓으신 걸 검색 했습니다. 다름이 아니라 www.martinii.fun 위 포스팅을 조금 활용해서, 현재 용지의 사이즈와 방향(가로/세로)을 출력하는 함수를 만들어보겠습니다. 전체 코드는 아래와 같습니다. 가급적 모든 과정을 함수로 작성하였으므로, 하나씩 뜯어보시면 이해하기 쉬울 것입니다. import win32com.client as win32 용지크기 = { (210, 297): "A4", (297, 420): "A3", (257, 364): "B4", } def 한글시작(): hwp = win32.gencache... 2021. 7. 5.
hwp.Run("AutoChangeRun") 액션아이디 중 AutoChangeRun 이 카테고리는 특정 메서드나 액션아이디를 소개하고 시연하는 짤막한 글을 올리려고 한다. 우선은 파라미터셋 아이디가 필요 없는, 한 줄로 실행 가능한 명령어로 먼저 소개해보고 싶다. 첫 번째 글은 AutoChangeRun에 관한 설명인데, Action Table.hwp 문서 첫 페이지에 나온다. Description에는 단순히 "동작"이라고 되어 있는데, 정확히는 "글자판 자동 변경" 기능의 토글이다. 이게 무슨 쓸모가 있을까 싶은데, (속상하지만 정말 아무 쓸모가 없어 보인다.) 그래도 내가 입력한 파이썬 코드로 이런 부분까지 컨트롤이 가능하다는 게 신기하기는 하다. 이 옵션의 효과는 말 그대로 한/영 자동변경을 토글 한다. 옵션이 꺼진 상태에서 아래처럼 타이핑하면.. 2021. 6. 30.
하스켈이 문득 궁금해지기 시작했다..ㅜ 파이썬을 배우기 시작한 이후 몇 달간은 문법을 익히는 게 걸림돌이 되지 않았다. 엄밀히 말하면, 어려워 보이는 개념은 "이해를 보류"했다. 그래도 내 단순업무를 자동화하거나, 간단한 웹프로그래밍을 배우는 데는 아무 문제가 없었다. 생활코딩 이고잉 선생님의 유튜브 영상을 보고 깨달은 건데, 일부러 스스로를 학습의 지옥으로 던져넣을 필요는 없었다. 만약 풀리지 않는 문제, 까다로운 문제가 발생하면 그 묵혀둔 답답함을 가지고 검색과 학습 끝에 해결책을 찾았을 때, 그 "지옥" 같던 학습이 "오아시스" 같은 즐거움으로 바뀐다는 경험을 얕게나마 프로그래밍을 배우면서 느끼게 되었다. 그런데...이놈의 왕성한 호기심은 어찌할 수가 없다. 사람이란 게 오랜 지루한 분야보다는, 완전히 새로운 분야가 훨씬 재미있어 보이게.. 2021. 2. 7.