사진도 셀필드를 활용해서 자동화가 가능한가요?
667
1
사진을 표에 넣는 경우가 많아서 자동화를 하고 싶습니다. 이 경우도 셀필드처럼 자동화가 가능한가요?
답변 1
1
특정 셀에 필드가 적용되어 있을 때는
hwp.PutFieldText를 이용하면 간편하게 텍스트를 넣을 수 있지만,
이미지를 삽입할 때에는 방식이 약간 다릅니다.
hwp.MoveToField(필드명)으로 해당 셀로 캐럿을 옮기신 후에
hwp.InsertPicture(이미지경로, sizeoption=3)위 방식으로 이미지를 삽입하시면 됩니다.
다만 위 API명령어 InsertPicture를 사용한 이미지삽입은
셀의 높이를 자동조절해주지 않습니다.
다소 번거롭지만
①미리 셀 높이를 조정해놓으신 상태로 sizeoption=3을 적용하시거나
②width와 height를 별도로 입력하시거나,
③아니면 아래 방법처럼 클립보드에 넣은 후에 Ctrl-V를 하게 하는 방식이 있습니다.
개인적으로는 ③번 방법을 가장 많이 사용합니다.
아래 함수를 참고하시기 바랍니다.
from io import BytesIO
import win32clipboard
from PIL import Image
import win32com.client as win32
def 클립보드로_이미지_삽입(파일경로):
이미지 = Image.open(파일경로)
아웃풋 = BytesIO()
이미지.convert('RGB').save(아웃풋, 'BMP')
최종데이터 = 아웃풋.getvalue()[14:]
아웃풋.close()
win32clipboard.OpenClipboard()
win32clipboard.EmptyClipboard()
win32clipboard.SetClipboardData(win32clipboard.CF_DIB, 최종데이터)
win32clipboard.CloseClipboard()
hwp.Run("Paste")
강의 연장 문의
0
53
0
강의연장 문의
0
53
0
예전 기출 강의도 반드시 봐야되나요??
0
128
1
챌린지 교재문의
1
116
1
학습 순서 문의드립니다
0
113
1
26년1회 실기 합격할수 있을까??ㅠㅠ
0
174
1
백준 서비스 종료
0
274
1
드뎌 석사 졸업합니다. ^^
0
253
1
질문이 있습니다
0
213
1
강의 연장이 될까요?
0
257
1
강의에 나오는 알고리즘이 코테에 많이 나오는건가요?
0
351
0
혹시 연장은 안되나요?
0
315
1





