XlsxWriter设置全局字体大小

guy*_*guy 4 python xlsxwriter

首次创建工作簿时,如何使用xlswriter永久设置字体大小?

我试过了:

book = xlsxwriter.Workbook(os.getcwd() + '\\test.xlsx')
sheet1 = book.add_worksheet()
format = book.add_format()
format.set_font_size(10)
Run Code Online (Sandbox Code Playgroud)

但是我仍然在输出中获得默认大小11。有什么问题

Tin*_*y.D 8

1,对于单个单元格的字体大小,您必须将传递format给,write如下所示:

workbook = xlsxwriter.Workbook('demo.xlsx')
worksheet = workbook.add_worksheet()

# Add a bold format to use to highlight cells.
bold = workbook.add_format({'bold': True})
# Add a font size 10 format.
format = workbook.add_format()
format.set_font_size(10)
# Write some simple text.
worksheet.write('A1', 'Hello', format)

# Text with formatting.
worksheet.write('A2', 'World', bold)

# Write some numbers, with row/column notation.
worksheet.write(2, 0, 123)
worksheet.write(3, 0, 123.456)


workbook.close()
Run Code Online (Sandbox Code Playgroud)

Hello将设置为字体大小10

在此处输入图片说明

更新: 2,对于所有单元格的字体大小,您可以设置工作簿的默认格式:

import xlsxwriter
workbook = xlsxwriter.Workbook('demo.xlsx')

# default cell format to size 10 
workbook.formats[0].set_font_size(10)

worksheet = workbook.add_worksheet()


# Write some simple text.
worksheet.write('A1', 'Hello')

worksheet.write('A2', 'World')

# Write some numbers, with row/column notation.
worksheet.write(2, 0, 123)
worksheet.write(3, 0, 123.456)

workbook.close()
Run Code Online (Sandbox Code Playgroud)

所有单元格将更改为字体大小10:

在此处输入图片说明

  • 解决方法是可以的,但是请注意,它会破坏大小表,插入到工作表中的图像和其他对象的大小。这是XlsxWriter当前不支持此功能的主要原因。 (2认同)