2016-07-12 5 views
3

회사 로고가있는 사용자 정의 헤더를 만들어야하는 python xlsxwriter를 사용하여 사용자 정의 송장을 만들어야했습니다. 결과 통합 문서는 Excel이 아닌 LibreOffice를 사용하여 열어야합니다. 내 로고 B2 셀에 삽입 할 수 있지만, 내 이미지가 LibreOffice와 함께 열 때, 헤더에서 찾을 수없는LibreOffice로 열면 xlsxwriter 이미지가 헤더에 표시되지 않습니다.

#!/usr/bin/env python 

try: 
    import xlsxwriter 
except ImportError as e: 
    print e 
    exit() 


workbook = xlsxwriter.Workbook('tmp.xlsx') 

preview = 'Select Print Preview to see the header and footer' 

# Insert a header image. 
# 
worksheet1 = workbook.add_worksheet('Simple') 
header1 = '&L&G' 
footer1 = '&LHere is some left aligned text.' 

worksheet1.set_header(header1, {'image_left': 'logo.png'}) 
worksheet1.set_footer(footer1) 
worksheet1.set_margins(top=1.3) 

# Insert an image. 
worksheet1.write('A2', 'Insert an image in a cell:') 
worksheet1.insert_image('B2', 'logo.png') 

worksheet1.set_column('A:A', 50) 
worksheet1.write('A1', preview) 
workbook.close() 

아래로 http://xlsxwriter.readthedocs.io/example_headers_footers.html

내 코드에서 예제를 사용하여

입니다 . 이미지는 Excel에서와 같이 나타납니다.

답변

0

예제가 작동합니다. 여기에 내가 모듈의 최신 버전으로 실행할 때 내가 얻을 출력 및 Excel 2013 :

enter image description here

은 아마 당신은 XlsxWriter의 이전 버전을 가지고있다. 다음과 같이 버전을 확인하십시오.

python -c "import xlsxwriter; print(xlsxwriter.__version__)" 

적어도 0.6.0이어야하며 현재 버전은 0.9.2 여야합니다.

+0

excel을 사용하여 열거 나 오픈 오피스를 사용하여 작성한 파일을 열어 본다면 확인해 보시기 바랍니다. libreoffice에서 시도했지만 표시되지 않습니다. 예, 0.9.2을 사용하고 있습니다. gavinyap @ gavin-ubuntu  ~/Development/excel  python -c 'import xlsxwriter; print (xlsxwriter .__ version__) ' 0.9.2 –

+0

나는 Excel 2013을 사용하고 있습니다. 또한 XlsxWriter의 저자이며 Excel 2007에서 만든 헤더 이미지 파일과 출력을 비교하는 여러 가지 테스트가 있습니다. 모두 통과. 그래서 그것은 효과가 있습니다. :-) – jmcnamara

+0

미안하지만 표시되지 않는 LibreOffice 때문인지 확신 할 수 없습니다. –

0

는 편집

로고 헤더가있는 XLSX는 Excel에서 완벽하게 작동합니다.

LibreOffice (5.1.4.2 10m0 (Build : 2))에 표시되지 않습니다. 이는 LibreOffice/OpenOffice의 버그 일 가능성이 있습니다.

+0

나는 사람들이 구글을 통해 이것을 발견 할 것이기 때문에 나는 분명히하고 싶다. Libreoffice 문제에서 작동하지 않을 수 있지만 XlsxWriter 문제가 아닙니다. XlsxWriter에는 XlsxWriter의 출력, XML 요소의 XML 요소, XML 요소의 XML 요소를 비교하는 [this one] (https://github.com/jmcnamara/XlsxWriter/blob/master/xlsxwriter/test/comparison/test_header_image01.py)과 같은 9 개의 테스트 케이스가 포함되어 있습니다. Excel로 작성된 파일. 모든 경우 출력은 100 % 동일합니다 (메타 데이터 제외). 이 테스트는 [Pythons의 범위] (https://travis-ci.org/jmcnamara/XlsxWriter)를 통과합니다. – jmcnamara

+0

Excel에서 헤더 이미지로 파일을 만들고 LibreOffice에서이 파일을 사용하여이를 확인할 수 있습니다. – jmcnamara

+0

예. Excel 용으로 완벽하게 작동합니다. 아마도 Excel 응용 프로그램을 사용하는 대상 사용자 만 사용할 수 있습니다. –