해결된 질문
작성
·
19
답변 2
0
개요번호, 즉 개요수준만 변경하는 방법은 아래와 같습니다. (스타일을 변경하지 않습니다.)
def 개요수준변경(level:int):
"""
현재 문단의 개요수준을 변경하는 함수. 0~9 입력가능
"""
pset = hwp.HParameterSet.HParaShape
hwp.HAction.GetDefault("ParagraphShape", pset.HSet)
pset.Level = level
return hwp.HAction.Execute("ParagraphShape", pset.HSet)
위처럼 스크립트매크로를 함수로 변환하여 사용하는 방법도 있고,
아래 방식의 코드로도 개요수준 변경이 가능합니다.
level = 5 # 0~9
prop = hwp.ParaShape
prop.SetItem("Level", level)
hwp.ParaShape = prop
(hwp 내부에서 작동하는 방식은 완전히 동일합니다.)
도움이 되었길 바랍니다ㅎ
행복한 하루 되세요!
사용자의 동작 거의 대부분은 스크립트매크로로 구현 가능합니다.
(다른이름으로 저장, 커서 위치 찾기, 필드에 값 넣기처럼, 메서드로 제공되는 기능을 제외하고는요.)
위의 "개요수준변경" 함수도 방금 스크립트매크로 녹화를 통해 빠르게 만들었습니다.
그 과정을 한 번 보여드리겠습니다.
위 과정을 통해 코드를 추출합니다.
추출한 스크립트매크로 코드는 아래와 같습니다.
function OnScriptMacro_중국어1성()
{
HAction.GetDefault("ParagraphShape", HParameterSet.HParaShape.HSet);
with (HParameterSet.HParaShape)
{
Level = 4;
}
HAction.Execute("ParagraphShape", HParameterSet.HParaShape.HSet);
}
이 코드는 파이썬 문법과 다른 jscript로 작성된 상태이므로,
파이썬 문법으로 변경해줘야 합니다.
조금 번거롭지만, 위 변환과정을 통해서 완성된 코드는 아래와 같습니다.
hwp.HAction.GetDefault("ParagraphShape", hwp.HParameterSet.HParaShape.HSet)
hwp.HParameterSet.HParaShape.Level = 4
hwp.HAction.Execute("ParagraphShape", hwp.HParameterSet.HParaShape.HSet)
코드 재활용 및 가독성 등을 위해 함수로 만드는 것이 좋겠습니다.
① 함수 이름은 "개요수준변경"
② level을 매개변수(int, 0~9)로 받아야 함
③ (선택) 마지막 Execute 라인을 return 에 넣어줌 : 성공시 True, 실패시 False를 리턴함
④ (선택) 중복되는 hwp.HParameterSet.HParaShape
을 pset
이라는 변수로 지정
위 사항들을 반영하여 완성한 함수는 아래와 같습니다.
def 개요수준변경(level):
pset = hwp.HParameterSet.HParaShape
hwp.HAction.GetDefault("ParagraphShape", pset.HSet)
pset.Level = level
return hwp.HAction.Execute("ParagraphShape", pset.HSet)
이렇게 함수를 만드는 과정까지 완료하였습니다.
아래아한글의 모든 기능을 미리 이렇게 파이썬 함수로 만들어놓으면 편할 것 같지만,
그러기 위해서는 코드가 2만 줄 이상 될 것으로 추측해봅니다.
미리 다 만들어놓는 것은 굉장히 힘듭니다.
(올해 중순까지 1만 줄 정도 작성해보다가 포기한 상태거든요ㅜ)
그래서 위 과정처럼,
그때그때 필요한 기능을 스크립트매크로를 통해 파이썬코드로 만드는 작업에 익숙해지시면
자동화가 훨씬 수월해질 것입니다.
또 궁금하신 부분 있으면 질문 남겨주세요.
0
안녕하세요, 인프런 AI 인턴입니다. Hyunuk Seo님.
당신의 질문은 파이썬을 이용하여 아래한글 문서에서 특정 스타일을 추출하고 개요 문단 수준을 변경하는 방법에 대한 것입니다. 이와 관련하여 유사한 질문과 답변을 찾아보았습니다.
아래한글 문서의 스타일을 파이썬으로 조작하는 방법은 pyhwpx
라이브러리를 사용하는 방법이 있습니다. 이 라이브러리를 통해 문서 내 특정 위치의 스타일 정보를 읽어오고, 원하는 레벨의 스타일로 변경할 수 있습니다.
여기에서 설명된 방법을 통해 스타일을 찾고 다른 스타일로 변경하는 코드 예시를 참고할 수 있습니다. 코드 내에서는 스타일 조회 및 변경이 어떻게 이루어지는지 자세히 설명되어 있습니다. 기본적으로 스타일을 변경하기 위해 StyleDirectEdit
라는 액션을 생성하고 실행하는 방법과 관련된 코드가 포함되어 있습니다.
특정 문단의 개요 수준을 설정하기 위해서는 아래한글의 API를 통해 문단 스타일을 조정할 수 있습니다. 개요 수준 설정은 해당 스타일의 속성을 수정하여 이루어지며, 이는 HwpAction
을 통해 수행할 수 있습니다.
이 질문에서는 개요 스타일을 지정하는 방법에 대해 논의하고 있으며, 스타일을 변경하여 특정 개요 수준으로 변경하는 방법이 제시되고 있습니다.
위의 링크들을 통해 파이썬을 사용한 아래한글 문서 스타일 조작 방법에 대한 세부적인 내용을 확인하실 수 있습니다. 각 링크에서는 실제 코드 예제를 통해 설명되어 있으니, 질문자님의 상황에 맞게 응용하시면 도움이 될 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.