ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Henri Menke <henrimenke@gmail.com>
To: ntg-context@ntg.nl
Subject: Re: Different colors in LaTeX and ConTeXt
Date: Tue, 12 Jul 2016 23:17:21 +0200	[thread overview]
Message-ID: <f59e3113-6dfb-365f-0559-e004803d73df@gmail.com> (raw)
In-Reply-To: <dbfbf28c-9b7b-5150-db1d-b84d9bef5d0c@wxs.nl>

On 07/12/2016 10:03 PM, Hans Hagen wrote:
> On 7/12/2016 9:39 PM, Henri Menke wrote:
>> Dear Aditya and Hans,
>>
>> I'm not so sure about it being a bug in pgfplots.  I played a little and
>> encountered the following.
> 
> As Aditya pointed out, these (probably used for tracing) colors are
> defined in such a way that they don't go via the context resolver. As
> these (few) colors are basically x windows colors, you can start your
> document with:
> 
> \usecolors[xwi]
> 
> which will set the context colors differently.

Adding \usecolors[xwi] to the example does not change anything.  Looking
at base/colo-imp-xwi.mkiv revealed, that it does not alter the way
colors are defined, but just defines a huge bunch of additional ones.

> 
>>> \usemodule[tikz]
>>> \starttext
>>>
>>> % Original gray
>>> \blackrule[color=gray,width=1cm,height=1pt]
>>>
>>> \starttikzpicture
>>>   \draw[gray,line width=1pt] (0,0) -- (1,0);
>>> \stoptikzpicture
>>>
>>> % New colors
>>> \definecolor[gray][s=0.5]
>>> \unprotect
>>> \pgfutil@definecolor{tikzgray}{gray}{0.5}
>>> \protect
>>>
>>> % Now ConTeXt's gray = tikzgray
>>> \blackrule[color=gray,width=1cm,height=1pt]
> 
> How is that supposed to work? Context will not inherit colors from tikz,
> the most you can expect is the reverse: tikz using context color
> definitions.

I'm very sorry for the confusion.  What I did was to adjust ConTeXt's
gray to have the same grayscale value as the tikzgray.  As is shown
below, the redefinition of gray does not propagate to TikZ.

> 
>>> \starttikzpicture
>>>   \draw[tikzgray,line width=1pt] (0,0) -- (1,0);
>>> \stoptikzpicture
>>>
>>> % Inside TikZ gray is still off
>>> \starttikzpicture
>>>   \draw[gray,line width=1pt] (0,0) -- (1,0);
>>> \stoptikzpicture
>>>
>>> \stoptext

In pgfutil-context.def there is though

\let\pgfutil@registergray \pgf@context@registergray

So it seems as if gray *should* be propagated from ConTeXt to TikZ,
which apparently takes place when loading TikZ.  Moving
\definecolor[gray][s=0.5] before \usemodule[tikz] shows this behavior.

The question is how to keep colors from ConTeXt and TikZ in sync.

Cheers,
Henri

> 
>> Cheers,
>> Henri
>>
>> On 07/12/2016 08:23 PM, Aditya Mahajan wrote:
>>> On Tue, 12 Jul 2016, Hans Hagen wrote:
>>>
>>>> On 7/12/2016 5:07 PM, Aditya Mahajan wrote:
>>>>> On Tue, 12 Jul 2016, Hans Hagen wrote:
>>>>>
>>>>>> On 7/12/2016 3:44 PM, Henri Menke wrote:
>>>>>>> Dear Hans,
>>>>>>>
>>>>>>> thanks for your reply.  Indeed there are color definitions in
>>>>>>> `pgfutil-context.def`.  However, they are commented out with the
>>>> message
>>>>>>>
>>>>>>>> % no need for x colors (users can load it if needed)
>>>>>>>> ...
>>>>>>>> %\pgfutil@definecolor{gray}{gray}{0.5}
>>>>>>>
>>>>>>> If I add
>>>>>>>
>>>>>>>> \csname pgfutil@definecolor\endcsname{gray}{gray}{0.5}
>>>>>>>
>>>>>>> to my document the gray shows up fine.  So that's for sure a
>>>>>>> feasible
>>>>>>> workaround.
>>>>>>>
>>>>>>> Can you comment on the phrase »no need for x colors (users can
>>>>>>> load it
>>>>>>> if needed)«?  I'm not quite sure what it means and it suggests that
>>>>>>> there exists a proper solution to my color problem.
>>>>>>
>>>>>> normally you want the same colors in tikz images as in context so
>>>>>> then
>>>>>> defining them in tikz is creating incompatibilities (your case is the
>>>>>> reverse and a-typical)
>>>>>
>>>>> However, without such redefinitions, tikz does not understand ConTeXt
>>>>> colors. I use a similar workaround in my documents as well.
>>>>
>>>> I have no clue what you mean.
>>>>
>>>> \definecolor[red][g=1]
>>>>
>>>> \startTEXpage
>>>>     \starttikzpicture
>>>>        \fill[red] (0,0) circle (1cm);
>>>>     \stoptikzpicture
>>>> \stopTEXpage
>>>>
>>>> works ok here and gives green. So, one can collect a list of colors
>>>> defined in tikz in a colo-imp-tikz.mkiv and load that one if needed.
>>>
>>> I guess it is a bug with pgfplots rather than tikz (which also means
>>> that it may be easier to pursuade pgfplot maintainers to use low level
>>> tikz interface, since tikz is already playing nice with context).
>>>
>>> \usemodule[tikz,pgfplots]
>>> \definecolor[red][g=1]
>>>
>>> \startmode[bug]
>>> \unprotect
>>> \pgfutil@definecolor{red}   {rgb} {0,1,0}
>>> \protect
>>> \stopmode
>>>
>>> \starttext
>>> \startTEXpage
>>>      \starttikzpicture
>>>        \startaxis
>>>          \addplot[color=red] coordinates { (0,0) (1,1) };
>>>        \stopaxis
>>>      \stoptikzpicture
>>> \stopTEXpage
>>> \stoptext
>>>
>>> Aditya
>>>
>>>
>>> ___________________________________________________________________________________
>>>
>>> If your question is of interest to others as well, please add an
>>> entry to the Wiki!
>>>
>>> maillist : ntg-context@ntg.nl /
>>> http://www.ntg.nl/mailman/listinfo/ntg-context
>>> webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
>>> archive  : http://foundry.supelec.fr/projects/contextrev/
>>> wiki     : http://contextgarden.net
>>> ___________________________________________________________________________________
>>>
>>>
>>
>> ___________________________________________________________________________________
>>
>> If your question is of interest to others as well, please add an entry
>> to the Wiki!
>>
>> maillist : ntg-context@ntg.nl /
>> http://www.ntg.nl/mailman/listinfo/ntg-context
>> webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
>> archive  : http://foundry.supelec.fr/projects/contextrev/
>> wiki     : http://contextgarden.net
>> ___________________________________________________________________________________
>>
>>
> 
> 

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

  reply	other threads:[~2016-07-12 21:17 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-12 11:53 Henri Menke
2016-07-12 12:29 ` Hans Hagen
2016-07-12 13:44   ` Henri Menke
2016-07-12 14:44     ` Hans Hagen
2016-07-12 15:07       ` Aditya Mahajan
2016-07-12 16:03         ` Hans Hagen
2016-07-12 18:23           ` Aditya Mahajan
2016-07-12 19:39             ` Henri Menke
2016-07-12 20:01               ` Alan BRASLAU
2016-07-12 20:03               ` Hans Hagen
2016-07-12 21:17                 ` Henri Menke [this message]
2016-07-13  7:44                   ` Hans Hagen

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=f59e3113-6dfb-365f-0559-e004803d73df@gmail.com \
    --to=henrimenke@gmail.com \
    --cc=ntg-context@ntg.nl \
    /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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).