중간 중간 함수 내용이 궁금하면

https://github.com/python-openxml/python-docx

여기로 들어가면 된다.




스타일 변경

글을 쓸 때 폰트 명, 폰트 크기등을 변경 시키고 싶을 것이다.

기본 설정 폰트를 변경하고 싶으면 document.styles['Normal'] 을 변경하면 된다.


1
2
3
style = document.styles['Normal']
style.font.name = '맑은 고딕'
tyle.font.size = Pt(8)
cs



* 한글폰트 변경


하지만 이 방식은 영문 폰트만 변경 되고 한글 폰트는 변경되지 않는다.

아쉽게도 한글 폰트 변경을 지정한 클래스가 없기 때문에 우리는 직접 설정해 줘야한다.


1
2
3
from docx.oxml.ns import qn, nsdecls
 
style._element.rPr.rFonts.set(qn('w:eastAsia'), '맑은 고딕'# 한글 폰트를 따로 설정해 준다
cs

이런 방법으로



* 스타일 생성


만약 새로운 스타일을 정의해 쓰고 싶다면


1
2
3
style_make = document.styles.add_style('banana', WD_STYLE_TYPE.CHARACTER)
 
document.add_paragraph("banana", style = style_make)
cs

이런 방법으로 사용하면 된다.




Head 지정 및 Head Style 변경

본문을 작성하면 제목을 써야 하고 제목으로 본문을 정리할 수 있다.

방식은 스타일을 새로 만드는 것과 비슷하다. 하지만 Head는 기본 정의된 Heading1~9를 바탕으로 지정 가능하다.

Heading은 1부터 9까지 순차적으로 대 분류에서 소 분류로 정의 되어 있다.


1
2
3
4
5
6
7
8
style_1 = document.styles.add_style('Heading_1', WD_STYLE_TYPE.PARAGRAPH)
style_1.base_style = document.styles['Heading 1']
style_1.font.name = '맑은 고딕'
style_1._element.rPr.rFonts.set(qn('w:eastAsia'), '맑은 고딕'# 한글 폰트를 따로 설정해 준다
style_1.font.size = Pt(14)
style_1.font.color.rgb = RGBColor(0x000x000x00)
 
document.add_paragraph("banana" , style='Heading_1')
cs

*폰트 색상은 RGB 16진수로 입력하면 원하는 색상이 된다.

+ Recent posts