Test image.width and image.height without using 'is not None'
- Simplification requested by @formatc1702 in review of #153 - Inspection of size_html_cell() in Graphviz source code https://gitlab.com/graphviz/graphviz/-/blob/master/lib/common/htmltable.c#L1210-1221 supports that a zero value is treated as not specified.
This commit is contained in:
parent
0c6b6f390d
commit
c21707980e
@ -16,23 +16,25 @@ class Image:
|
||||
width: Optional[int] = None
|
||||
height: Optional[int] = None
|
||||
fixedsize: Optional[bool] = None
|
||||
# Contents of the cell <td> just below the image cell:
|
||||
# Contents of the text cell <td> just below the image cell:
|
||||
caption: Optional[str] = None
|
||||
# See also HTML doc at https://graphviz.org/doc/info/shapes.html#html
|
||||
|
||||
def __post_init__(self):
|
||||
|
||||
if self.scale is None:
|
||||
self.scale = "false" if self.width is None and self.height is None \
|
||||
else "both" if self.width is not None and self.height is not None \
|
||||
self.scale = "false" if not self.width and not self.height \
|
||||
else "both" if self.width and self.height \
|
||||
else "true" # When only one dimension is specified.
|
||||
|
||||
if self.fixedsize is None:
|
||||
self.fixedsize = self.width is not None or self.height is not None
|
||||
self.fixedsize = self.width or self.height
|
||||
|
||||
if self.width is None and self.height is not None:
|
||||
if self.height:
|
||||
if not self.width:
|
||||
self.width = self.height # Assuming 1:1 aspect ratio for now.
|
||||
elif self.height is None and self.width is not None:
|
||||
else:
|
||||
if self.width:
|
||||
self.height = self.width # Assuming 1:1 aspect ratio for now.
|
||||
|
||||
|
||||
|
||||
@ -75,8 +75,8 @@ def html_caption(image):
|
||||
|
||||
def html_size_attr(image):
|
||||
# Return Graphviz HTML attributes to specify minimum or fixed size of a TABLE or TD object
|
||||
return ((f' width="{image.width}"' if image.width is not None else '')
|
||||
+ (f' height="{image.height}"' if image.height is not None else '')
|
||||
return ((f' width="{image.width}"' if image.width else '')
|
||||
+ (f' height="{image.height}"' if image.height else '')
|
||||
+ ( ' fixedsize="true"' if image.fixedsize else '')) if image else ''
|
||||
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user