The problem is that built-in color-name-to-rgb methods is trying to map color to available color space which is 256 colors in best case.
ELISP> (apply 'color-rgb-to-hex (color-name-to-rgb "#ff8040"))
"#ff875f"
So color is already distorted before blending. One solution might be just manually parse colors if they start with # and fall back to color-name-to-rgb otherwise.
The problem is that built-in
color-name-to-rgbmethods is trying to map color to available color space which is 256 colors in best case.So color is already distorted before blending. One solution might be just manually parse colors if they start with
#and fall back tocolor-name-to-rgbotherwise.