Я хочу добавить изображение в заголовок xlsx, но оно ничего не показывает в сгенерированном файле (наше приложение выбирает .csv, затем конвертирует в .xlsx, используя .py файл с xlsxwriter, а затем в .pdf, используя команда libreoffice)
Мы уже пробовали использовать разные форматы и размеры изображений, но это не имело значения.
Также пробовал с примерами из библиотеки (https://xlsxwriter.readthedocs.io/example_headers_footers.html?highlight=set_header) без удачи.
Мы использовали worksheet.insert_image()
, он добавляет изображение, но не в заголовок. Это наш текущий результат: https://ibb.co/QNXv8bM
Мы хотим добавить изображение непосредственно в заголовок (возможно, используя set_header()
), но пока наши попытки с помощью этого метода не дали никаких результатов. Когда мы используем set_header()
для размещения изображения, оно ничего не показывает в заголовке.
Вот фрагмент файла python, который мы используем:
def create_worksheet(workbook, data, image, p_header_text):
'''
Creates and formats worksheet
:param workbook: Main workbook
:type workbook: xlsxwriter.Workbook
:param data: dict with data to use in the worksheet
:type data: dict
data example:
data = {'headings': [head1, head2, ..., headn], 'rows': [[data1, ..., datan], ...]}
:return: Nothing
'''
worksheet = workbook.add_worksheet()
### Page Setup
worksheet.set_margins(top=1.4)
worksheet.set_landscape()
worksheet.hide_gridlines(2)
#worksheet.set_paper(9) # 9 = A4
worksheet.fit_to_pages(1, 0)
### Header and footer
header_text = p_header_text
#worksheet.set_header('&C&16&"Calibri,Bold"{}'.format(header_text))
worksheet.set_header('&L&G', {'image_left': '/home/reports/LTA-logo.jpg'})
worksheet.set_footer('&L&D&RPage &P of &N')
#worksheet.insert_image('A1', '/home/reports/LTA-logo.jpg', {'x_offset': 0, 'y_offset': 0})
#worksheet.set_header('&C&G', {'image_left': '/home/reports/LTA-logo.jpg'})
### Create table
create_table(worksheet, data)
Примечание : worksheet.set_header('&C&16&"Calibri,Bold"{}'.format(header_text))
работает нормально, показывает текст в заголовке. Проблема в том, когда мы пытаемся поместить изображение ...
Ожидаемый результат - отображение изображения в заголовке с выравниванием по левому краю, как показано на этом рисунке: https://ibb.co/vQTytK2
Примечание 2 : по деловым причинам (компания) я не могу показать данные на экранах печати