On Tue, Jan 19, 2021 at 4:37 AM Lars Ingebrigtsen wrote: > Thomas Frössman writes: > > > 1. color-rgb-to-hex rounding > > > > Hi. I was investigating why a simple color space conversion from rgb > > to lab and back via just multiplying a component with 1.0 caused > > colors to change when being converted back. The issue is that even > > tiny changes to a component float in LAB space can bring the color > > value down by 0.00000x or something in RGB and when it's converted > > back to hex it gets a surprising value. > > > > I think I propose this change making rounding optional so that it > > doesn't affect anyone who is depending on the current behaviour. > > > > (defun solarized-color-rgb-to-hex (red green blue &optional > digits-per-component > > round) > > Was this meant to be added to the solarized package, or to the in-tree > `color-rgb-to-hex' function? > Yes the in tree one, I added the change locally to that theme to avoid getting the rounding issues but I forgot to remove the prefix when posting to the e-mail list. I am really not sure if rounding should just always be applied or if it should be optional, I can't see many situations when you would not want to round but at the same time it will change colors in existing code ever so slightly. > > > 2. typos (?) in color-srgb-to-xyz typos > > > > While looking at the issue and referencing the wikipedia sRGB page it > > seems like these values should be changed.. Doing this upset the tests > > a bit though so I didn't take it all the way because I started trying > > to understand how to actually produce test case data that is based on > > some verified numbers and not just the output of color.el's functions. > > I don't know, either. Is this related to bug#41544, perhaps? > I don't think color-distance has anything to do with color.el at all. Fixing these small value changes doesn't practically change much as far as I could see except that color-tests.el maybe shouldn't assume that it's own internal functions are correct when testing. I mostly want good test data for the ciede2000 function, there is probably good test data available here but it's unlikely to be usable in emacs due to licensing. http://www2.ece.rochester.edu/~gsharma/ciede2000/ I might resume work on finding better test data a little later and then create a patch of it all. > > -- > (domestic pets only, the antidote for overdose, milk.) > bloggy blog: http://lars.ingebrigtsen.no > -- Thomas Frössman http://t.jossystem.se