setpdfcolor z promenne

Jaromír Kuben kuben at scova.vabo.cz
Thu Apr 15 08:50:01 CEST 2004


Vlastimil Ott napsal(a):

> Dobry vecer,
>
> premyslim jak v pdfcsplainu zapsat do pdf (nejakou) barvu, ktera se
> nachazi v tokenu \starabarva a dostane se tam rizenim osudu kdykoliv
> (volanim jine rutiny nekde a nekolikrat v dokumentu).
>
> Mam vlastni makro
>
> \def\pdfsetcolor#1{\pdfliteral{#1 k}}
>
> Kdyz volam \pdfsetcolor{\the\starabarva}, \starabarva obsahuje napr. '0
> 0 0 1', xpdf hlasi neco ve smyslu
>
> Error (1145310): Unknown operator '\the'
> Error (1145312): Unknown operator '\starabarva'
>
> coz je logicke. Jak ale mam dosahnout zapsani barvy do pdf, aniz bych
> specifikoval jeji konstantu? Prece nebudu psat wrapper, ktery dostane na
> vstupu parametr 'black' a do pdf zapise '\pdfliteral 0 0 0 0 k' a stejne
> tak pro dalsi barvy?!
>
> Nejsem zadny trikar^, ale domnivam se, ze tady asi jako takovy TeX moc
> nepomuze.

A proc tam davate to \the?

\def\pdfsetcolor#1{\pdfliteral{#1 k}}
\def\starabarva{1 0 0 1}
\pdfsetcolor\starabarva

To projde prelozene pdftexem bez problemu.
\pdfliteral zrejme funguje jako \special, takze prikazy v jeho argumentu
se normalne expanduji.
Aspon tak se to v pdfcolor.tex, kde je ta Vase definice \pdfsetcolor,
pouziva.

Zdravi
                Jaromir Kuben

>
> Presto (prave proto?) diky za odpovedi,
>
> --vo
>
> --
>
>
> Vlastimil Ott
> www.e-ott.info
>
> E-mail: vlastimil at e-ott.info
> Jabber: vlastimil.ott at jabber.cz
> ICQ: 321706612





More information about the csTeX mailing list