@@ -147,14 +147,15 @@ def __init__(
147147 self ._tilegrid = None
148148 self ._prev_label_direction = None
149149
150- if "padding_top" not in kwargs :
151- kwargs ["padding_top" ] = outline_size + 0
152- if "padding_bottom" not in kwargs :
153- kwargs ["padding_bottom" ] = outline_size + 2
154- if "padding_left" not in kwargs :
155- kwargs ["padding_left" ] = outline_size + 0
156- if "padding_right" not in kwargs :
157- kwargs ["padding_right" ] = outline_size + 0
150+ if outline_color is not None :
151+ if "padding_top" not in kwargs :
152+ kwargs ["padding_top" ] = outline_size
153+ if "padding_bottom" not in kwargs :
154+ kwargs ["padding_bottom" ] = outline_size
155+ if "padding_left" not in kwargs :
156+ kwargs ["padding_left" ] = outline_size
157+ if "padding_right" not in kwargs :
158+ kwargs ["padding_right" ] = outline_size
158159
159160 super ().__init__ (font , ** kwargs )
160161
@@ -930,10 +931,10 @@ def outline_size(self):
930931 def outline_size (self , new_outline_size ):
931932 self ._outline_size = new_outline_size
932933
933- self ._padding_top = new_outline_size + 0
934- self ._padding_bottom = new_outline_size + 2
935- self ._padding_left = new_outline_size + 0
936- self ._padding_right = new_outline_size + 0
934+ self ._padding_bottom = max ( self . _padding_bottom , self . outline_size )
935+ self ._padding_top = max ( self . _padding_top , self . outline_size )
936+ self ._padding_left = max ( self . _padding_left , self . outline_size )
937+ self ._padding_right = max ( self . _padding_right , self . outline_size )
937938
938939 self ._init_outline_stamp (new_outline_size )
939940 self ._reset_text (
@@ -960,6 +961,12 @@ def add_accent_range(
960961 """
961962 if accent_type not in {"foreground_background" , "outline" }:
962963 raise ValueError ("accent_type must be either 'foreground_background' or 'outline'" )
964+
965+ if accent_type == "outline" :
966+ self ._padding_bottom = max (self ._padding_bottom , self .outline_size )
967+ self ._padding_top = max (self ._padding_top , self .outline_size )
968+ self ._padding_left = max (self ._padding_left , self .outline_size )
969+ self ._padding_right = max (self ._padding_right , self .outline_size )
963970 self ._accent_ranges .append ((start , end , foreground_color , background_color , accent_type ))
964971 self ._reset_text (text = str (self ._text ))
965972
0 commit comments