인프런 커뮤니티 질문&답변

mylee님의 프로필 이미지
mylee

작성한 질문수

직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피

표 만들고 이미지 삽입하기

이미지를 글자와 겹쳐서 삽입하는 방법

해결된 질문

작성

·

243

1

좋은 강의 감사드립니다.

한 가지 질문이 있어 문의드립니다.

한/글 파일에 사용인감 이미지를 첨부하고 싶은데요

현재까지는 표를 만들어서 특정 셀에 이미지를 입력하는 방법까지 구현해봤습니다.

그런데 한글 서식에서는 보통 "(서명)" 글자와 겹쳐서 이미지를 삽입하는데요

이와 같이 이미지를 글자와 겹쳐서 삽입하는 것도 가능할까요?

간단한 Tip이나 예제가 있으면 부탁드립니다.

감사합니다. 

 

답변 2

1

일코님의 프로필 이미지
일코
지식공유자

안녕하세요?

(서명) 란 위치에 인감이나 직인 이미지를 넣는 사례가 많이 있기는 합니다.

어려운 작업도 아니고요.

  1. 한/글에서는 글자와 겹치게(밑으로 또는 위로) 이미지를 삽입하는 방법이 제공되고 있습니다.

  2. 파이썬 코드가 아니더라도 ①직인이미지 삽입 후 ②글자처럼 취급 해제, ③본문과의 배치를 "글 앞으로" 또는 "글 뒤로"로 설정하시고 ④특정 위치로 이동시키시면 됩니다.. (아래 이미지 참고)

     

    image

    이런 과정을 파이썬 코드로 옮겨보면 코드가 그리 길지는 않습니다. 예시로 움짤을 보여드리면,

     

    image

    전체 코드는 아래와 같습니다.

     

    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)  # 실행

이 코드는 한/글 문서에 이미지를 추가하고, 이미지의 속성 중 ‘글자처럼 취급’을 해제하여 이미지를 글자와 겹치도록 위치시키는 기능을 구현합니다. 이미지가 글자 위에 존재하도록 설정하는 부분에 주목해주세요.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

mylee님의 프로필 이미지
mylee

작성한 질문수

질문하기