all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Rasmus <rasmus@gmx.us>
To: 25890@debbugs.gnu.org
Subject: bug#25890: `color-values` gives wrong value
Date: Mon, 27 Feb 2017 18:09:46 +0100	[thread overview]
Message-ID: <87lgsrmug5.fsf@gmx.us> (raw)
In-Reply-To: <87zih7n2yt.fsf@pank.eu>

Hi Eli,

Eli Zaretskii <eliz@gnu.org> writes:

>> I try to get the color value of my background, "light yellow", with
>> color.el.  However, `color-values` from faces.el returns the wrong value.
>> 
>>   (color-values "#ffffff")      => (65280 65280 65280) ; The max values.
>
> Are you sure?
>
> What does the below produce?
>
>    (color-values "#fffffffff")

For that I get the right value:

    (color-values "#fffffffff") => (65520 65520 65520)
    (color-values "#ffffff")    => (65280 65280 65280)

>>   (color-values "#ffffe0")      => (65280 65280 57344) ; Light yellow hex.
>>   (color-values "light yellow") => (65535 65535 57568) ; The potential bug.
>
> On my system, I get these results:
>
>   (color-values "#ffffff")      => (65535 65535 65535)
>   (color-values "#ffffe0")      => (65535 65535 57568)
>   (color-values "light yellow") => (65535 65535 57568)

Which seems more reasonable.

>> That is the color value of "light yellow" exceeds the maximum value as
>> defined by the color values of white (cf. `color-rgb-to-hex').  This means
>> that the color.el functions won't work.
>
> I think this means your color resolution is greater than 24 bits.

Xorg tells me it's using 24 bits.

    $> xwininfo -root | grep Depth
    Depth: 24

> Or maybe I don't understand how the above affects your code.

I want to manipulate colors such as "light yellow" with color.el.  E.g.

    (set-frame-parameter (selected-frame) 'background-color
                         (color-darken-name "light yellow" 5))

This produces an "Undefined color" error because

    (color-darken-name "light yellow" 5) => "#100100c6".

This in turn points to `color-name-to-rgb', which uses (color-values
"#ffffff") as the denominator.  Because "#ffffff produces an RGB triplet
with smaller numbers than "light yellow", I get an RGB triple with
elements exceeding 1, which it shouldn't.

So an easy fix might be to use "#fffffffff" in `color-name-to-rgb', but
then I'd still not have equal color values for the white with and without
alpha...

    (equal (color-values "#fffffffff") (color-values "#ffffff")) => nil

Thus, I suggested that the error was in the C code in my initial report.
I hope this explains the problem I'm seeing better.

Thanks,
Rasmus

-- 
Even a three-legged dog has three good legs to lose







  reply	other threads:[~2017-02-27 17:09 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-27 14:05 bug#25890: 26.0.50; `color-values` gives wrong value Rasmus
2017-02-27 15:51 ` Eli Zaretskii
2017-02-27 17:09   ` Rasmus [this message]
2017-02-27 23:36   ` Michael Heerdegen
2017-02-28  9:44     ` bug#25890: " Rasmus
2017-02-28 15:50       ` Eli Zaretskii
2017-02-28 23:42         ` Michael Heerdegen
2017-02-28 23:54           ` Drew Adams
2017-03-03 14:16             ` Eli Zaretskii
2017-03-01  3:43           ` Eli Zaretskii
2017-03-01  9:55         ` Rasmus
2017-03-03 14:08           ` Eli Zaretskii
2017-03-04 14:24             ` Simen Heggestøyl
2017-03-04 14:38               ` Eli Zaretskii
2017-03-04 15:44                 ` Lars Ingebrigtsen
2017-03-04 16:15                   ` Eli Zaretskii
2017-03-10  5:23 ` mail
2017-03-10  7:28   ` Eli Zaretskii
2017-03-10  8:13     ` mail
2017-03-10  8:33       ` mail
2017-03-10  9:28         ` Eli Zaretskii
2017-03-11 10:06           ` mail
2017-03-10  9:25       ` Eli Zaretskii
2017-03-10 11:07         ` Lars Ingebrigtsen
2017-03-10 13:32           ` Eli Zaretskii
2017-03-11 10:08             ` mail
2017-03-29 20:01 ` bug#25890: Default value of digits-per-component? Clément Pit-Claudel
2017-03-30  2:36   ` Eli Zaretskii
2017-03-30  3:10     ` Clément Pit-Claudel
     [not found] <<87zih7n2yt.fsf@pank.eu>
     [not found] ` <<83r32jpr8b.fsf@gnu.org>
     [not found]   ` <<87bmtnryqr.fsf@drachen>
     [not found]     ` <<87d1e2tzt5.fsf@pank.eu>
     [not found]       ` <<8337eypb5l.fsf@gnu.org>
     [not found]         ` <<87vartx4qd.fsf@drachen>
     [not found]           ` <<56bad9de-8111-4962-a9e9-2dbf0084e004@default>
     [not found]             ` <<83wpc6la28.fsf@gnu.org>
2017-03-03 15:49               ` bug#25890: `color-values` gives wrong value Drew Adams
2017-03-03 18:32                 ` Eli Zaretskii
     [not found] <<<87zih7n2yt.fsf@pank.eu>
     [not found] ` <<<83r32jpr8b.fsf@gnu.org>
     [not found]   ` <<<87bmtnryqr.fsf@drachen>
     [not found]     ` <<<87d1e2tzt5.fsf@pank.eu>
     [not found]       ` <<<8337eypb5l.fsf@gnu.org>
     [not found]         ` <<<87vartx4qd.fsf@drachen>
     [not found]           ` <<<56bad9de-8111-4962-a9e9-2dbf0084e004@default>
     [not found]             ` <<<83wpc6la28.fsf@gnu.org>
     [not found]               ` <<2cfd6280-34de-4751-b35f-ec7d47a16595@default>
     [not found]                 ` <<83pohyky8i.fsf@gnu.org>
2017-03-03 19:20                   ` Drew Adams
2017-03-03 19:27                     ` Eli Zaretskii
     [not found] <<<<87zih7n2yt.fsf@pank.eu>
     [not found] ` <<<<83r32jpr8b.fsf@gnu.org>
     [not found]   ` <<<<87bmtnryqr.fsf@drachen>
     [not found]     ` <<<<87d1e2tzt5.fsf@pank.eu>
     [not found]       ` <<<<8337eypb5l.fsf@gnu.org>
     [not found]         ` <<<<87vartx4qd.fsf@drachen>
     [not found]           ` <<<<56bad9de-8111-4962-a9e9-2dbf0084e004@default>
     [not found]             ` <<<<83wpc6la28.fsf@gnu.org>
     [not found]               ` <<<2cfd6280-34de-4751-b35f-ec7d47a16595@default>
     [not found]                 ` <<<83pohyky8i.fsf@gnu.org>
     [not found]                   ` <<d73ecee8-1b1d-4739-b2b8-e3eb9ecc3ce0@default>
     [not found]                     ` <<83o9xikvop.fsf@gnu.org>
2017-03-03 21:18                       ` Drew Adams
2017-03-04  8:43                         ` Eli Zaretskii
     [not found] <<<<<87zih7n2yt.fsf@pank.eu>
     [not found] ` <<<<<83r32jpr8b.fsf@gnu.org>
     [not found]   ` <<<<<87bmtnryqr.fsf@drachen>
     [not found]     ` <<<<<87d1e2tzt5.fsf@pank.eu>
     [not found]       ` <<<<<8337eypb5l.fsf@gnu.org>
     [not found]         ` <<<<<87vartx4qd.fsf@drachen>
     [not found]           ` <<<<<56bad9de-8111-4962-a9e9-2dbf0084e004@default>
     [not found]             ` <<<<<83wpc6la28.fsf@gnu.org>
     [not found]               ` <<<<2cfd6280-34de-4751-b35f-ec7d47a16595@default>
     [not found]                 ` <<<<83pohyky8i.fsf@gnu.org>
     [not found]                   ` <<<d73ecee8-1b1d-4739-b2b8-e3eb9ecc3ce0@default>
     [not found]                     ` <<<83o9xikvop.fsf@gnu.org>
     [not found]                       ` <<1b96dc61-19bb-486b-a408-c3b3c15e113b@default>
     [not found]                         ` <<83lgsll9ey.fsf@gnu.org>
2017-03-04 15:38                           ` Drew Adams
2017-03-04 16:10                             ` Eli Zaretskii
     [not found] <<<<<<87zih7n2yt.fsf@pank.eu>
     [not found] ` <<<<<<83r32jpr8b.fsf@gnu.org>
     [not found]   ` <<<<<<87bmtnryqr.fsf@drachen>
     [not found]     ` <<<<<<87d1e2tzt5.fsf@pank.eu>
     [not found]       ` <<<<<<8337eypb5l.fsf@gnu.org>
     [not found]         ` <<<<<<87vartx4qd.fsf@drachen>
     [not found]           ` <<<<<<56bad9de-8111-4962-a9e9-2dbf0084e004@default>
     [not found]             ` <<<<<<83wpc6la28.fsf@gnu.org>
     [not found]               ` <<<<<2cfd6280-34de-4751-b35f-ec7d47a16595@default>
     [not found]                 ` <<<<<83pohyky8i.fsf@gnu.org>
     [not found]                   ` <<<<d73ecee8-1b1d-4739-b2b8-e3eb9ecc3ce0@default>
     [not found]                     ` <<<<83o9xikvop.fsf@gnu.org>
     [not found]                       ` <<<1b96dc61-19bb-486b-a408-c3b3c15e113b@default>
     [not found]                         ` <<<83lgsll9ey.fsf@gnu.org>
     [not found]                           ` <<59441882-425e-4962-8760-70c505d991dd@default>
     [not found]                             ` <<83lgslja4t.fsf@gnu.org>
2017-03-04 20:40                               ` Drew Adams

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87lgsrmug5.fsf@gmx.us \
    --to=rasmus@gmx.us \
    --cc=25890@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.