해결된 질문
작성
·
243
답변 2
1
안녕하세요?
(서명) 란 위치에 인감이나 직인 이미지를 넣는 사례가 많이 있기는 합니다.
어려운 작업도 아니고요.
한/글에서는 글자와 겹치게(밑으로 또는 위로) 이미지를 삽입하는 방법이 제공되고 있습니다.
파이썬 코드가 아니더라도 ①직인이미지 삽입 후 ②글자처럼 취급 해제, ③본문과의 배치를 "글 앞으로" 또는 "글 뒤로"로 설정하시고 ④특정 위치로 이동시키시면 됩니다.. (아래 이미지 참고)
이런 과정을 파이썬 코드로 옮겨보면 코드가 그리 길지는 않습니다. 예시로 움짤을 보여드리면,
전체 코드는 아래와 같습니다.
from pyhwpx import Hwp
hwp = Hwp()
hwp.MoveDocEnd()
hwp.insert_picture("./sign.png")
hwp.FindCtrl()
hwp.HAction.GetDefault("ShapeObjDialog", hwp.HParameterSet.HShapeObject.HSet)
hwp.HParameterSet.HShapeObject.TextWrap = 2 # 글자 뒤로 이미지 배치
hwp.HParameterSet.HShapeObject.HorzOffset = hwp.MiliToHwpUnit(139)
hwp.HParameterSet.HShapeObject.VertOffset = hwp.MiliToHwpUnit(196)
hwp.HParameterSet.HShapeObject.TreatAsChar = 0
hwp.HParameterSet.HShapeObject.HSet.SetItem("ShapeType", 1)
hwp.HAction.Execute("ShapeObjDialog", hwp.HParameterSet.HShapeObject.HSet)
참고해주시기 바라며,
보다 구체적인 문의는 댓글이나 새로운 질문글을 남겨주시기 바랍니다.
행복한 하루 되세요^^
0
안녕하세요, 인프런 AI 인턴입니다.
mylee님의 질문에 대해, 한글 문서에서 이미지를 글자와 겹쳐서 삽입하는 방법에 대한 유사한 경우의 해결 방법을 찾았습니다. 질문하신 내용에 가장 잘 부합하는 답변은 다음과 같습니다:
이 게시물에서, 한 학생이 한/글 문서에 이미지를 글자 위에 겹쳐서 삽입하는 방법에 대한 코드를 공유했습니다. 질문자는 과거에 글자 위에 이미지를 겹치고 싶다고 질문했었고, 본인이 직접 해답을 찾아 코드를 공유합니다. 핵심적인 파이썬 코드는 아래와 같습니다.
import os
import win32com.client as win32
hwp = win32.gencache.EnsureDispatch("hwpframe.hwpobject")
hwp.XHwpWindows.Item(0).Visible = True
file_path = os.path.join(os.getcwd(), "문서양식/테스트문서.hwp")
hwp.Open(file_path)
img_path = r"추가하길원하는이미지경로.png"
hwp.InsertPicture(img_path, Embedded=True)
hwp.FindCtrl() # 이미지 선택
# 이미지의 속성 조정 (글자와 겹치도록)
hwp.HAction.GetDefault("ShapeObjDialog", hwp.HParameterSet.HShapeObject.HSet)
hwp.HParameterSet.HShapeObject.TextWrap = hwp.TextWrapType("InFrontOfText")
hwp.HParameterSet.HShapeObject.TreatAsChar = 0 # 글자처럼 취급 해제
hwp.HAction.Execute("ShapeObjDialog", hwp.HParameterSet.HShapeObject.HSet) # 실행
이 코드는 한/글 문서에 이미지를 추가하고, 이미지의 속성 중 ‘글자처럼 취급’을 해제하여 이미지를 글자와 겹치도록 위치시키는 기능을 구현합니다. 이미지가 글자 위에 존재하도록 설정하는 부분에 주목해주세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.