本文整理汇总了Python中openpyxl.styles.PatternFill方法的典型用法代码示例。如果您正苦于以下问题:Python styles.PatternFill方法的具体用法?Python styles.PatternFill怎么用?Python styles.PatternFill使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类openpyxl.styles
的用法示例。
在下文中一共展示了styles.PatternFill方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: to_openpyxl_style
# 需要导入模块: from openpyxl import styles [as 别名]
# 或者: from openpyxl.styles import PatternFill [as 别名]
def to_openpyxl_style(self):
try:
openpyxl_style = self.cache[self]
except KeyError:
side = Side(border_style=self.border_type, color=utils.colors.black)
border = Border(left=side, right=side, top=side, bottom=side)
openpyxl_style = self.cache[self] = NamedStyle(
name=str(hash(self)),
font=Font(name=self.font, size=self.font_size, color=OpenPyColor(self.font_color),
bold=self.bold, underline=self.underline),
fill=PatternFill(patternType=self.fill_pattern_type, fgColor=self.bg_color),
alignment=Alignment(horizontal=self.horizontal_alignment, vertical=self.vertical_alignment,
wrap_text=self.wrap_text, shrink_to_fit=self.shrink_to_fit,
indent=self.indent, text_rotation=self.text_rotation),
border=border,
number_format=self.number_format,
protection=Protection(locked=self.protection)
)
return openpyxl_style
示例2: get_cell_style
# 需要导入模块: from openpyxl import styles [as 别名]
# 或者: from openpyxl.styles import PatternFill [as 别名]
def get_cell_style(color='FF000000', bgcolor='FFFFFFFF', font='Calibri', size=11, bold=False, italic=False,
underline='none', strike=False, border=None, border_style=BORDER_THIN, border_bottom=None,
border_bottom_style=None, horizontal='general', vertical='bottom', number_format=None):
if not border:
border = 'FFB6B6B4'
if not border_bottom:
border_bottom = border
if not border_bottom_style:
border_bottom_style = border_style
return Style(font=Font(name=font, size=size, bold=bold, italic=italic, vertAlign=None, underline=underline,
strike=strike, color=color),
fill=PatternFill(patternType='solid', fgColor=Color(bgcolor)),
border=Border(
left=Side(border_style=border_style, color=Color(border)),
right=Side(border_style=border_style, color=Color(border)),
top=Side(border_style=border_style, color=Color(border)),
bottom=Side(border_style=border_bottom_style, color=Color(border_bottom)),),
alignment=Alignment(horizontal=horizontal, vertical=vertical, text_rotation=0, wrap_text=False,
shrink_to_fit=False, indent=0),
number_format=number_format
)
示例3: cell2Fcolor
# 需要导入模块: from openpyxl import styles [as 别名]
# 或者: from openpyxl.styles import PatternFill [as 别名]
def cell2Fcolor(cell, color='red'):
fill = PatternFill("solid", fgColor=getattr(colors, color.upper()))
cell.fill = fill
return cell
示例4: changecolor
# 需要导入模块: from openpyxl import styles [as 别名]
# 或者: from openpyxl.styles import PatternFill [as 别名]
def changecolor(count,col,lnth):
if count == 0:
rgb=[255,0,0]
color_string="".join([str(hex(i))[2:].upper().rjust(2, "0") for i in rgb])
sheet[col + index].fill=PatternFill(fill_type="solid", start_color='FF' + color_string, end_color='FF' + color_string)
elif count > 0 and count < lnth:
rgb=[255,255,0]
color_string="".join([str(hex(i))[2:].upper().rjust(2, "0") for i in rgb])
sheet[col + index].fill=PatternFill(fill_type="solid", start_color='FF' + color_string, end_color='FF' + color_string)
else:
rgb=[255,255,255]
color_string="".join([str(hex(i))[2:].upper().rjust(2, "0") for i in rgb])
sheet[col + index].fill=PatternFill(fill_type="solid", start_color='FF' + color_string, end_color='FF' + color_string)
示例5: headercount
# 需要导入模块: from openpyxl import styles [as 别名]
# 或者: from openpyxl.styles import PatternFill [as 别名]
def headercount(tag,col,lnth):
countall = 0
countfull = 0
countpart = 0
for h in soup.findAll(tag):
countall += 1
counttemp = 0
for kw in keywords:
if kw.lower() in h.get_text().lower():
counttemp += 1
if counttemp == lnth:
countfull += 1
elif counttemp > 0 and counttemp < lnth:
countpart += 1
sheet[col + index] = str(countall) + ' - ' + str(countfull) + ' - ' + str(countpart)
if countall == 0:
rgb=[255,0,0]
color_string="".join([str(hex(i))[2:].upper().rjust(2, "0") for i in rgb])
sheet[col + index].fill=PatternFill(fill_type="solid", start_color='FF' + color_string, end_color='FF' + color_string)
else:
rgb=[255,255,255]
color_string="".join([str(hex(i))[2:].upper().rjust(2, "0") for i in rgb])
sheet[col + index].fill=PatternFill(fill_type="solid", start_color='FF' + color_string, end_color='FF' + color_string)
示例6: test_to_excel_styleconverter
# 需要导入模块: from openpyxl import styles [as 别名]
# 或者: from openpyxl.styles import PatternFill [as 别名]
def test_to_excel_styleconverter(self, merge_cells, ext, engine):
from openpyxl import styles
hstyle = {
"font": {
"color": '00FF0000',
"bold": True,
},
"borders": {
"top": "thin",
"right": "thin",
"bottom": "thin",
"left": "thin",
},
"alignment": {
"horizontal": "center",
"vertical": "top",
},
"fill": {
"patternType": 'solid',
'fgColor': {
'rgb': '006666FF',
'tint': 0.3,
},
},
"number_format": {
"format_code": "0.00"
},
"protection": {
"locked": True,
"hidden": False,
},
}
font_color = styles.Color('00FF0000')
font = styles.Font(bold=True, color=font_color)
side = styles.Side(style=styles.borders.BORDER_THIN)
border = styles.Border(top=side, right=side, bottom=side, left=side)
alignment = styles.Alignment(horizontal='center', vertical='top')
fill_color = styles.Color(rgb='006666FF', tint=0.3)
fill = styles.PatternFill(patternType='solid', fgColor=fill_color)
number_format = '0.00'
protection = styles.Protection(locked=True, hidden=False)
kw = _OpenpyxlWriter._convert_to_style_kwargs(hstyle)
assert kw['font'] == font
assert kw['border'] == border
assert kw['alignment'] == alignment
assert kw['fill'] == fill
assert kw['number_format'] == number_format
assert kw['protection'] == protection
示例7: create_table
# 需要导入模块: from openpyxl import styles [as 别名]
# 或者: from openpyxl.styles import PatternFill [as 别名]
def create_table(ws, column_names, columns, title=None, bold_first_column=True, selected_rows=None, selected_columns=None):
if selected_rows is None:
selected_rows = []
if selected_columns is None:
selected_columns = []
bold_ft = Font(bold=True)
fill = PatternFill(fill_type='solid',
start_color='FF27E85B',
end_color='FF27E85B')
#prepare data
formated_columns = []
for column in columns:
formated_column = []
for value in column:
if isinstance(value, int):
formated_column.append("{:,}".format(value))
elif isinstance(value, float):
formated_column.append("%.4f" % value)
else:
formated_column.append(value)
formated_columns.append(formated_column)
if title:
ws.append([title])
ws.cell(row=ws.max_row, column=1).font = bold_ft
ws.append(column_names)
for i in range(len(column_names)):
ws.cell(row=ws.max_row, column=i+1).font = bold_ft
if not formated_columns:
return
for i in range(len(formated_columns[0])):
ws.append([column[i] for column in formated_columns])
if bold_first_column:
ws.cell(row=ws.max_row, column=1).font = bold_ft
if i in selected_rows:
for j in range(len(formated_columns)):
ws.cell(row=ws.max_row, column=j+1).fill = fill
for column_ind in selected_columns:
ws.cell(row=ws.max_row, column=column_ind+1).fill = fill
ws.append([])
示例8: test_to_excel_styleconverter
# 需要导入模块: from openpyxl import styles [as 别名]
# 或者: from openpyxl.styles import PatternFill [as 别名]
def test_to_excel_styleconverter(self):
import openpyxl
from openpyxl import styles
hstyle = {
"font": {
"color": '00FF0000',
"bold": True,
},
"borders": {
"top": "thin",
"right": "thin",
"bottom": "thin",
"left": "thin",
},
"alignment": {
"horizontal": "center",
"vertical": "top",
},
"fill": {
"patternType": 'solid',
'fgColor': {
'rgb': '006666FF',
'tint': 0.3,
},
},
"number_format": {
"format_code": "0.00"
},
"protection": {
"locked": True,
"hidden": False,
},
}
font_color = styles.Color('00FF0000')
font = styles.Font(bold=True, color=font_color)
side = styles.Side(style=styles.borders.BORDER_THIN)
border = styles.Border(top=side, right=side, bottom=side, left=side)
alignment = styles.Alignment(horizontal='center', vertical='top')
fill_color = styles.Color(rgb='006666FF', tint=0.3)
fill = styles.PatternFill(patternType='solid', fgColor=fill_color)
# ahh openpyxl API changes
ver = openpyxl.__version__
if ver >= LooseVersion('2.0.0') and ver < LooseVersion('2.1.0'):
number_format = styles.NumberFormat(format_code='0.00')
else:
number_format = '0.00' # XXX: Only works with openpyxl-2.1.0
protection = styles.Protection(locked=True, hidden=False)
kw = _Openpyxl20Writer._convert_to_style_kwargs(hstyle)
assert kw['font'] == font
assert kw['border'] == border
assert kw['alignment'] == alignment
assert kw['fill'] == fill
assert kw['number_format'] == number_format
assert kw['protection'] == protection