본문 바로가기

아래한글89

한/글 표로 차트 그리기(확산형 누적막대) 다음과 같은 설문데이터가 있습니다. 시각화를 해 보고 싶은데 일반적인 누적막대로는 행간의 차이가 뭐랄까 극적이지 않습니다. 그래서 경계선으로 정렬해서 좌우로 튀어나오게 아래와 같은 차트를 만들어 보고 싶었습니다. 가장 자주 사용하는 "수업 안내"의 점유율이 높다는 정보가 시각적으로 훨씬 더 두드러지는 느낌입니다. 재미있게도 위 이미지는 아래아한글 표로 직접 만든 차트입니다. 구현을 고민하는 데 시간이 많이 들기는 했지만 코드 자체는 길지 않을뿐더러, 생각보다 간단합니다. 코드와 시연화면을 보여드리겠습니다. 파이썬 코드 import os from time import sleep import win32com.client as win32 import pandas as pd def shift(percent, d.. 2022. 12. 18.
정부부처 보도자료에 필드가 적용되어 요약 언어모델 데이터셋 만들기 쉬워졌다 과기정통부와 행안부 보도자료를 살펴보다가 재미있는 점을 두 가지 발견했습니다. 하나는, 보도자료에 machine-readable한 hwpx 포맷으로 바뀌어가고 있다는 점이며 다른 하나는 올해 초, 1월 말 경부터 한/글 문서에 필드와 누름틀이 매겨지고 있다는 점입니다. 이 두 가지는 항상 양질의 데이터에 배고픈 요즘 시대에 아주 큰 강점이 됩니다. 예를 들어보겠습니다. 1. 뉴스기사 크롤링할 때 얼마 전부터 KoGPT나 KoBART 등 한국어 대규모 언어모델이 개발되고 있는데, 학습데이터셋 대부분은 웹에 공개된 언론 뉴스기사나 위키자료 등이죠. 크롤링으로 대규모의 자료를 스크랩해오더라도 데이터셋의 전/후처리가 쉽지 않은데, 그 이유는 언론사마다 제각각인 시맨틱 태그, 맥락없이 중간중간 삽입된 사진설명, .. 2022. 9. 22.
[QnA] "PDF가 모아찍기로 출력돼요" #PDF 출력시 파이썬으로 모아찍기 일괄해제 파이썬으로 특정 폴더에 있는 한글(hwp)파일들을 PDF로 전환하려고하는데.. 한글에서 마지막 저장 시 두쪽 모아찍기로 인쇄하고 저장을 하면 해당 설정을 기억해서 파이썬으로 불러들여서 PDF로 저장하면 한페이지에 두장 모아 찍기로 PDF가 저장이 됩니다. 저장된 파일의 최종 인쇄설정을 무시하고 종이 한장에 1페이지 인쇄 설정한 상태로 전환하여 PDF로 저장하고 싶은데.. 쉽지 않네요 파이썬으로 여러 개의 HWP 파일을 PDF로 변환하는 건 사실 굉장히 간단한 작업입니다. 코드도 짧죠. 예를 들어, 위와 같이 hwp파일이 여러 개 있고, 동일한 파일명에 확장자만 바꿔서 PDF파일을 생성하려면? 아래와 같이 코드를 짜볼 수 있겠죠. import os import win32com.client as win32 .. 2022. 9. 21.
[QnA] (5/5) 특정단어를 포함한 문단을 표로 감싸기-최종 안녕하세요. 한글 자동화 프로그램을 공부하고 있는데 궁금한 사항이 있어 질문합니다. 특정 글자가 들어가 있는 문단을 찾아서 그 곳에 글뒤로 속성으로 표를 삽입하고 싶습니다. 1. 자동으로 표 생성시 속성을 "본문과의배치"에서 "글뒤로" 선택하여 생성할 수 있나요? 이 속성없이 생성시 문단에 삽입되면서 글자가 밀려나는 현상이 발생합니다. 2. 찾은 문단의 위치값을 HWPUNIT 값으로 알 수 있나요? 표 생성시 위치값은 HWPUNIT으로 지정해야 하는데 현재 찾은 위치의 속성은 줄,칸으로 알려주네요. 이상입니다. 자, 이전포스팅까지의 내용을 통해 드디어 모든 재료가 완성되었습니다. 2022.09.19 - [업무자동화/파이썬-아래아한글 자동화 응용] - [QnA] (2/?) 표 생성하고, 수정하기 [QnA].. 2022. 9. 19.
[QnA] (4/5) 특정 단어를 포함한 문단 검색하기 안녕하세요. 한글 자동화 프로그램을 공부하고 있는데 궁금한 사항이 있어 질문합니다. 특정 글자가 들어가 있는 문단을 찾아서 그 곳에 글뒤로 속성으로 표를 삽입하고 싶습니다. 1. 자동으로 표 생성시 속성을 "본문과의배치"에서 "글뒤로" 선택하여 생성할 수 있나요? 이 속성없이 생성시 문단에 삽입되면서 글자가 밀려나는 현상이 발생합니다. 2. 찾은 문단의 위치값을 HWPUNIT 값으로 알 수 있나요? 표 생성시 위치값은 HWPUNIT으로 지정해야 하는데 현재 찾은 위치의 속성은 줄,칸으로 알려주네요. 이상입니다. 지난 포스팅에서는 지난 포스팅에서는 용지의 너비와 문단의 높이를 구하는 함수를 구현해보았습니다. 2022.09.19 - [업무자동화/파이썬-아래아한글 자동화 응용] - [QnA] (3/5) 문단의.. 2022. 9. 19.
[QnA] (3/5) 문단의 높이와 너비(HwpUnit) 구하기 안녕하세요. 한글 자동화 프로그램을 공부하고 있는데 궁금한 사항이 있어 질문합니다. 특정 글자가 들어가 있는 문단을 찾아서 그 곳에 글뒤로 속성으로 표를 삽입하고 싶습니다. 1. 자동으로 표 생성시 속성을 "본문과의배치"에서 "글뒤로" 선택하여 생성할 수 있나요? 이 속성없이 생성시 문단에 삽입되면서 글자가 밀려나는 현상이 발생합니다. 2. 찾은 문단의 위치값을 HWPUNIT 값으로 알 수 있나요? 표 생성시 위치값은 HWPUNIT으로 지정해야 하는데 현재 찾은 위치의 속성은 줄,칸으로 알려주네요. 이상입니다. 문단의 크기를 좌표값으로 구할 수 있다면 얼마나 좋을까요? 그런데 한글에는 그런 기능이 구현되어 있지 않으니 문단의 줄 수, 글자높이(pt)와 줄간격(%)을 더해서 문단의 높이를 직접 계산해보겠습.. 2022. 9. 19.
[QnA] (2/5) 표 생성하고, 수정하기 안녕하세요. 한글 자동화 프로그램을 공부하고 있는데 궁금한 사항이 있어 질문합니다. 특정 글자가 들어가 있는 문단을 찾아서 그 곳에 글뒤로 속성으로 표를 삽입하고 싶습니다. 1. 자동으로 표 생성시 속성을 "본문과의배치"에서 "글뒤로" 선택하여 생성할 수 있나요? 이 속성없이 생성시 문단에 삽입되면서 글자가 밀려나는 현상이 발생합니다. 2. 찾은 문단의 위치값을 HWPUNIT 값으로 알 수 있나요? 표 생성시 위치값은 HWPUNIT으로 지정해야 하는데 현재 찾은 위치의 속성은 줄,칸으로 알려주네요. 이상입니다. 이전 포스팅(인트로)에서는 특정 단락 위치에 백그라운드로 표를 삽입하는 방법을 구상해보았고, 그 이유와 대략적으로 구현해야 하는 함수 다섯 개를 짚어보았습니다. 2022.09.19 - [업무자동화.. 2022. 9. 19.
[QnA] (1/5) 특정단어 포함 문단 뒤에 표 깔기-인트로 안녕하세요. 한글 자동화 프로그램을 공부하고 있는데 궁금한 사항이 있어 질문합니다. 특정 글자가 들어가 있는 문단을 찾아서 그 곳에 글뒤로 속성으로 표를 삽입하고 싶습니다. 1. 자동으로 표 생성시 속성을 "본문과의배치"에서 "글뒤로" 선택하여 생성할 수 있나요? 이 속성없이 생성시 문단에 삽입되면서 글자가 밀려나는 현상이 발생합니다. 2. 찾은 문단의 위치값을 HWPUNIT 값으로 알 수 있나요? 표 생성시 위치값은 HWPUNIT으로 지정해야 하는데 현재 찾은 위치의 속성은 줄,칸으로 알려주네요. 이상입니다. 한/글 개발자 커뮤니티에 재미있는 질문이 있어 블로그에서 다뤄보겠습니다. 이를테면 이런 예제를 말씀하시는 것 같아요. 아래와 같은 문서가 있을 때 특정 단어가 들어가는 문단에 다음과 같이 백그라운.. 2022. 9. 19.
SetPos 대신 SetPosBySet을 쓰면 훨씬 유용한 경우 : GetAnchorPos와 연계할 때 컨트롤코드를 써서 아래아한글 보고서 자동화를 할 때 십중팔구 사용하는 메서드가 있습니다. 해당 컨트롤의 위치를 찾아내는 GetAnchorPos, 그리고 찾아낸 위치로 찾아가는 SetPos가 대표적이죠. 이전 예제에서 사용한 GetAnchorPos 메서드 예제 일부를 먼저 살펴보겠습니다. def 문자열삽입(문자열): hwp.HAction.GetDefault("InsertText", hwp.HParameterSet.HInsertText.HSet) hwp.HParameterSet.HInsertText.Text = 문자열 hwp.HAction.Execute("InsertText", hwp.HParameterSet.HInsertText.HSet) caption_list = [ "구름 낀 하늘", "푸른 하늘", .. 2022. 9. 15.