mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
DOCX Output: Table padding
This commit is contained in:
parent
5ac5f91cd9
commit
136cfc6b3a
@ -279,6 +279,8 @@ class BlockStyle(DOCXStyle):
|
||||
for edge in border_edges:
|
||||
setattr(self, 'border_%s_style' % edge, 'none')
|
||||
setattr(self, 'border_%s_width' % edge, 0)
|
||||
setattr(self, 'padding_' + edge, 0)
|
||||
setattr(self, 'margin_' + edge, 0)
|
||||
if css is None:
|
||||
self.page_break_before = self.keep_lines = False
|
||||
self.text_indent = 0
|
||||
|
@ -30,6 +30,7 @@ def read_css_block_borders(self, css):
|
||||
getattr(obj, 'border_%s_color' % edge),
|
||||
self.BLEVEL
|
||||
))
|
||||
setattr(self, 'padding_' + edge, getattr(obj, 'padding_' + edge))
|
||||
|
||||
def as_percent(x):
|
||||
if x and x.endswith('%'):
|
||||
@ -91,6 +92,7 @@ class Cell(object):
|
||||
bc = self.background_color or self.row.background_color or self.row.table.background_color
|
||||
if bc:
|
||||
makeelement(tcPr, 'w:shd', w_val="clear", w_color="auto", w_fill=bc)
|
||||
|
||||
b = makeelement(tcPr, 'w:tcBorders', append=False)
|
||||
for edge, border in self.borders.iteritems():
|
||||
if border.width > 0 and border.style != 'none':
|
||||
@ -98,6 +100,16 @@ class Cell(object):
|
||||
if len(b) > 0:
|
||||
tcPr.append(b)
|
||||
|
||||
m = makeelement(tcPr, 'w:tcMar', append=False)
|
||||
for edge in border_edges:
|
||||
padding = getattr(self, 'padding_' + edge)
|
||||
if edge in {'top', 'bottom'} or (edge == 'left' and self is self.row.first_cell) or (edge == 'right' and self is self.row.last_cell):
|
||||
padding += getattr(self.row, 'padding_' + edge)
|
||||
if padding > 0:
|
||||
makeelement(m, 'w:' + edge, w_type='dxa', w_w=str(int(padding * 20)))
|
||||
if len(m) > 0:
|
||||
tcPr.append(m)
|
||||
|
||||
for item in self.items:
|
||||
item.serialize(tc)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user