Python XlsxWriter - 文本框


在 Excel 中,文本框是一个图形对象,可以放置在工作表上的任何位置,并且可以根据需要四处移动。所需的格式化功能,例如字体(颜色、大小、名称等)、对齐方式、填充效果、方向等,可以应用于文本框中包含的文本。

使用 XlsxWriter – 文本框

在 XlsxWriter 中,有insert_textbox()方法可将文本框放置在工作表上。必须给出文本框的单元格位置以及要在其中写入的文本。此外,不同的格式化选项以字典对象的形式给出。

例子

以下代码在单元格 C5 处显示一个文本框,给定的字符串显示字体和对齐属性,如下所示 -

import xlsxwriter

wb = xlsxwriter.Workbook('hello.xlsx')
worksheet = wb.add_worksheet()
text = 'Welcome to TutorialsPoint'

options = {'font': {'color': 'red','size': 14},
   'align': {'vertical': 'middle','horizontal': 'center'}}
worksheet.insert_textbox('C5', text, options)

wb.close()

输出

使用 Excel 应用程序打开工作表“ hello.xlsx ”。文本框如下所示 -

文本框

文本框选项 – 填充

默认情况下,文本框的大小为 192X120 像素(对应于 3 列和 6 行)。该尺寸可以通过宽度和高度参数进行更改,两者均以像素为单位。inset_textbox()方法可接受的参数之一是fill参数。它采用预定义的颜色名称或十六进制颜色表示形式作为值。

例子

以下代码在自定义大小的文本框中显示多行字符串,背景填充为红色。

import xlsxwriter
wb = xlsxwriter.Workbook('hello.xlsx')
worksheet = wb.add_worksheet()
text = 'TutorialsPoint - Simple Easy Learning\nThe best resource for Online Education'

options = {
   'width': 384,
   'height':80,
   'font': {'color': 'blue', 'bold':True, 'size': 14},
   'align': {'vertical': 'middle', 'horizontal': 'center'},
   'fill':{'color':'red'},
}
worksheet.insert_textbox('C5', text, options)
wb.close()

如下图所示,单元格 C5 处呈现了一个多行文本框。

多行文本框

文本框选项 – text_rotation

另一个重要的属性是text_rotation。默认情况下,文本水平显示。如果需要,您可以通过指定角度作为其值来更改其方向。看看下面的选项。

import xlsxwriter
wb = xlsxwriter.Workbook('hello.xlsx')
worksheet = wb.add_worksheet()
text = 'TutorialsPoint - Simple Easy Learning\nThe best resource for Online Education'

options = {
   'width': 128,
   'height':200,
   'font': {'bold':True, 'name':'Arial', 'size': 14},
   'text_rotation':90,
}
worksheet.insert_textbox('C5', text, options)
wb.close()

文本现在以垂直方向显示在文本框中。

文本旋转

object_position参数控制文本框的Behave它可以有以下可能的值及其效果 -

  • “1” - 使用单元格移动和调整大小(默认)。

  • "2" - 移动但不调整单元格大小。

  • “3” - 不要移动单元格或调整单元格大小。