2017-10-23 3 views
0

docx.table.Table 및 docx.text.paragraph.Paragraph 객체를 문서에 추가하고 싶습니다. 현재python-docx 문서에 테이블 객체 추가

테이블 = document.add_table (행 = 2, COLS = 2)

문서 안에 새 테이블을 만들 것이고, 표는 모두 함께 docx.table.Table 객체를 보유 할 그 속성.

내가 대신하고 싶은 것은 예를 들어 이전에 다른 문서에서 읽은 문서에 OBJECT 테이블을 추가하는 것입니다.

내가 새로 추가 한 테이블과 이전에 읽은 테이블 개체의 모든 속성을 반복하면서 값을 설정하는 것으로 충분하지만 대체 방법이 있습니까?

감사합니다.

답변

1

설명에 허용되는 몇 가지 다른 가능성이 있지만 python-docx에는 직접 API 지원이 없습니다.

가장 간단한 경우는 python-docx 문서 개체의 한 부분에서 동일한 문서에있는 다른 위치 으로 표를 복사하는 것입니다. 이것은 아마도 테이블에 대한 XML의 전체 복사본을 수행하여 수행 할 수 있습니다. 이 작업을 수행하는 방법에 대한 자세한 내용은이 질문의 범위를 벗어나지 만 "python-docx" OR "python-pptx" deepcopy을 검색하면 몇 가지 예제가 있습니다.

더 복잡한 것은 사이에 하나의 문서 개체를 복사하는 것입니다. 테이블에는 원본 문서에서 사용할 수 있지만 대상 문서에서는 사용할 수없는 외부 참조가 포함될 수 있습니다. 결과적으로 모든 종속성을 찾거나 해결하지 않으면 deepcopy 방식이 항상 작동하지는 않습니다.

마지막으로 PowerPoint 프레젠테이션에서 찾을 수 있거나 Excel 문서의 범위에서 구성된 것처럼 OLE 개체를 복사/포함 할 수 있습니다. OLE 개체 임베딩은 지원되지 않으며 조만간 추가 될 가능성이 적습니다. 주로 OLE 형식 임베딩 형식 (잘 설명되어 있지 않음) 때문에 모호합니다.

+0

의견을 주셔서 감사합니다! 그래서 나는 같은 문서의 스 니펫을 가지고 있으면 같은 스타일, 참조 등에 액세스 할 수 있기 때문에이 경우에도 사용할 수 있다고 생각합니까? 내가 지금하려고하는 것은 내가 삽입하고자하는 테이블의 전체 XML 스키마를 복사하고 그것을 기본 문서에 추가하는 것입니다.이 스키마는 내가 생각하기에 deepcopying과 비슷하게 작동 할 것입니다. – SaintHUN