convertColor: Correctly shorten #FF0000 (upper case) to red
Signed-off-by: Niels Thykier <niels@thykier.net>
This commit is contained in:
parent
ce92515c1c
commit
a3c4aa86d9
2 changed files with 4 additions and 2 deletions
|
|
@ -2245,6 +2245,9 @@ def convertColor(s):
|
|||
"""
|
||||
Converts the input color string and returns it to the shortest known format for it.
|
||||
"""
|
||||
if s[0] == '#':
|
||||
# Normalize #RGB into lower case early as our lookup relies on the lower case name
|
||||
s = s.lower()
|
||||
color = colors.get(s)
|
||||
# Short cut: if we know the color (either by name or hex code) then skip the
|
||||
# parsing logic. This makes
|
||||
|
|
@ -2255,7 +2258,6 @@ def convertColor(s):
|
|||
# If it is in #RGB/#RRGGBB format already, then we can also avoid
|
||||
# the regex parsing code. Notably, if it is not a known hex code,
|
||||
# then at best we can truncate #RRGGBB into #RGB.
|
||||
s = s.lower()
|
||||
if len(s) == 7 and s[1] == s[2] and s[3] == s[4] and s[5] == s[6]:
|
||||
s = '#' + s[1] + s[3] + s[5]
|
||||
return s
|
||||
|
|
|
|||
|
|
@ -9,6 +9,6 @@
|
|||
<rect id="rect" width="100" height="100" fill="rgb(15,16,17)" stroke="darkgrey" />
|
||||
<circle id="circle" cx="100" cy="100" r="30" fill="url(#g1)" stroke="url(#c1)" />
|
||||
<ellipse id="ellipse" cx="100" cy="100" rx="30" ry="30" style="fill:#ffffff" fill="black" />
|
||||
<rect id="short_color" width="100" height="100" fill="rgb(255,0, 0)" stroke="#ff0000" />
|
||||
<rect id="short_color" width="100" height="100" fill="rgb(255,0, 0)" stroke="#FF0000" />
|
||||
<rect id="tied_color" width="100" height="100" fill="blue" stroke="rgb(0, 0, 255)" />
|
||||
</svg>
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 768 B After Width: | Height: | Size: 768 B |
Loading…
Add table
Add a link
Reference in a new issue