Python Xlsxwriter 简明教程
Python XlsxWriter - Border
本节介绍如何应用和设置单元格边框以及文本框周围的边框的外观。
Working with Cell Border
add_format() 方法中控制单元格边框外观的属性如下表所示 -
Description |
Property |
method |
Cell border |
'border' |
set_border() |
Bottom border |
'bottom' |
set_bottom() |
Top border |
'top' |
set_top() |
Left border |
'left' |
set_left() |
Right border |
'right' |
set_right() |
Border color |
'border_color' |
set_border_color() |
Bottom color |
'bottom_color' |
set_bottom_color() |
Top color |
'top_color' |
set_top_color() |
Left color |
'left_color' |
set_left_color() |
Right color |
'right_color' |
set_right_color() |
请注意,对于 add_format() 方法的每个属性,都有一个以 set_propertyname() 方法开头的相应格式类方法。
例如,要设置单元格的边框,可以使用 add_format() 方法中的 border 属性,如下所示 -
f1= wb.add_format({ 'border':2})
还可以通过调用 set_border() 方法来执行相同操作 -
f1 = workbook.add_format()
f1.set_border(2)
各个边框元素可以通过以下属性或格式方法进行配置 -
-
set_bottom()
-
set_top()
-
set_left()
-
set_right()
这些边框方法/属性具有一个整数值,该值对应于预定义的样式,如下表所示 -
Index |
Name |
Weight |
Style |
0 |
None |
0 |
|
1 |
Continuous |
1 |
----------- |
2 |
Continuous |
2 |
----------- |
3 |
Dash |
1 |
- - - - - - |
4 |
Dot |
1 |
[style="arabic"]. . . . . . |
5 |
Continuous |
3 |
----------- |
6 |
Double |
3 |
=========== |
7 |
Continuous |
0 |
----------- |
8 |
Dash |
2 |
- - - - - - |
9 |
Dash Dot |
1 |
- . - . - . |
10 |
Dash Dot |
2 |
- . - . - . |
11 |
Dash Dot Dot |
1 |
- . . - . . |
12 |
Dash Dot Dot |
2 |
- . . - . . |
13 |
SlantDash Dot |
2 |
/ - . / - . |
Example
以下代码显示了边框属性是如何使用的。此处,每行都有一个对应于连续加粗的边框样式 2。
import xlsxwriter
wb = xlsxwriter.Workbook('hello.xlsx')
ws = wb.add_worksheet()
f1=wb.add_format({'bold':True, 'border':2, 'border_color':'red'})
f2=wb.add_format({'border':2, 'border_color':'red'})
headings = ['Month', 'Product A', 'Product B']
data = [
['Jan', 'Feb', 'Mar', 'Apr', 'May', 'June'],
[10, 40, 50, 20, 10, 50],
[30, 60, 70, 50, 40, 30],
]
ws.write_row('A1', headings, f1)
ws.write_column('A2', data[0], f2)
ws.write_column('B2', data[1],f2)
ws.write_column('C2', data[2],f2)
wb.close()
Working with Textbox Border
边框属性也适用于文本框对象。文本框还有一个类似于边框的行属性,因此它们可以互换使用。边框本身还可以通过 none、color、width 和 dash_type 参数进行进一步格式化。
设置为 none 的行或边框表示文本框没有边框。 dash_type 参数可以是以下任意值 −
-
solid
-
round_dot
-
square_dot
-
dash
-
dash_dot
-
long_dash
-
long_dash_dot
-
long_dash_dot_dot
Example
这是一个显示两个文本框的程序,其中一个具有蓝色实心边框,而第二个盒子具有蓝色 dash_dot 类型边框。
import xlsxwriter
wb = xlsxwriter.Workbook('hello.xlsx')
ws = wb.add_worksheet()
ws.insert_textbox('B2', 'Welcome to Tutorialspoint',
{'border': {'color': '#FF9900'}})
ws.insert_textbox('B10', 'Welcome to Tutorialspoint', {
'line':
{'color': 'blue', 'dash_type': 'dash_dot'}
})
wb.close()