我正在尝试创建没有边框的单元格,但不知何故,默认的细边框始终存在。
from xlwt import Workbook,easyxf
tl = easyxf('border: top thick, right no_line, bottom no_line, left thick')
tr = easyxf('border: top thick, right thick, bottom no_line, left no_line')
br = easyxf('border: top no_line, right thick, bottom thick, left no_line')
bl = easyxf('border: top no_line, right no_line, bottom thick, left thick')
w = Workbook()
ws = w.add_sheet('Border')
ws.write(1, 1, style=tl)
ws.write(1, 2, style=tr)
ws.write(2, 1, style=bl)
ws.write(2, 2, style=br)
w.save('borders-test.xls')
我得到的是
但我希望(厚边框内没有细边框)
我正在寻找让no_line
按预期工作的解决方案(或者理解它实际上是一些不同的东西并调整我的期望)。然而,我并不是在寻找像#34这样的解决方法;设置边框的颜色与背景相同" (除非知道GUI以相同的方式工作)。
Python 3.5.2 |Continuum Analytics, Inc.| (default, Jul 2 2016, 17:52:12)
[GCC 4.2.1 Compatible Apple LLVM 4.2 (clang-425.0.28)] on darwin
xlwt==1.1.2
P.S。只需从代码中删除... no_line
部分(因为它是默认设置)没有任何区别。
答案 0 :(得分:0)
使用top_color 颜色,bottom_color 颜色,left_color 颜色,right_color 颜色在你的情况下它应该是白色。
你不想在 tl 中使用边框,你不想要右边和底部的边框,所以设置right_color white,bottom_color white。
from xlwt import Workbook,easyxf
tl = easyxf('border: top thick, bottom thick, left thick, right thick,
right_color white, bottom_color white')
tr = easyxf('border: top thick, bottom thick, left thick, right thick,
left_color white, bottom_color white')
br = easyxf('border: top thick, bottom thick, left thick, right thick,
left_color white, top_color white')
bl = easyxf('border: top thick, bottom thick, left thick, right thick,
right_color white, top_color white')
w = Workbook()
ws = w.add_sheet('Border')
ws.write(1, 1, style=tl)
ws.write(1, 2, style=tr)
ws.write(2, 1, style=bl)
ws.write(2, 2, style=br)
w.save('borders-test.xls')
希望这能解决你的问题。