본문 바로가기

<tcPr>는 Microsoft Word의 DOCX 파일 형식에서 테이블 셀의 속성을 정의하는 XML 요소입니다. DOCX 파일은 실제로 ZIP 파일 형식으로 압축된 여러 XML 파일로 구성되어 있으며, 이 XML 파일들에서 문서의 내용을 설명합니다.

<tcPr>는 "Table Cell Properties"의 약자로, 특정 테이블 셀의 속성을 지정합니다. 이 요소 내에서 다양한 속성을 설정하여 셀의 모양과 동작을 제어할 수 있습니다. 여기에는 셀의 너비, 높이, 테두리 스타일, 셀 병합, 셀 내 텍스트의 방향 등이 포함될 수 있습니다.

예를 들어, 다음과 같은 XML 구조에서 <tcPr> 요소를 볼 수 있습니다:

<w:tc>
  <w:tcPr>
    <w:tcW w:w="5000" w:type="dxa"/>
    <w:shd w:val="clear" w:color="auto" w:fill="FF0000"/>
    <w:vAlign w:val="center"/>
  </w:tcPr>
  <w:p>
    <w:r>
      <w:t>Cell content</w:t>
    </w:r>
  </w:p>
</w:tc>

여기서 <w:tc>는 테이블 셀을 나타내고, 그 안의 <w:tcPr> 요소는 해당 셀의 속성을 정의합니다.

  • <w:tcW>: 셀의 너비를 정의합니다. 여기서는 5000 twips로 설정되어 있습니다.
  • <w:shd>: 셀의 배경색을 정의합니다. 여기서는 빨간색 (FF0000)으로 설정되어 있습니다.
  • <w:vAlign>: 셀 내 텍스트의 수직 정렬을 정의합니다. 여기서는 중앙 정렬 (center)로 설정되어 있습니다.

이와 같이 <tcPr> 요소는 DOCX 파일 내 테이블 셀의 다양한 속성을 설정하는 데 사용됩니다. 이를 통해 문서 내 테이블의 레이아웃과 스타일을 세밀하게 조정할 수 있습니다.

셀 마진 없애기

아래 코드를 적용하면 셀 마진을 없앨 수 있다. 기본적으로 셀에 스페이스, 마진이 붙어있어 원하는대로 출력이 되지 않으면 아래 코드를 참고해서 정리하세요.

def set_cell_margins(cell, top=0, bottom=0, left=0, right=0):
    tc = cell._element
    tcPr = tc.get_or_add_tcPr()

    # 셀 마진 설정 (단위: Pt)
    tcMar = OxmlElement('w:tcMar')
    for name, value in (("top", top), ("bottom", bottom), ("left", left), ("right", right)):
        sub_element = OxmlElement(f'w:{name}')
        sub_element.set(qn('w:w'), str(value))
        sub_element.set(qn('w:type'), 'dxa')
        tcMar.append(sub_element)

    tcPr.append(tcMar)

B로그0간

개발 관련 글과 유용한 정보를 공유하는 공간입니다.