From: Hans Hagen <pragma@wxs.nl>
Subject: Re: Extending the black circled numbers
Date: Tue, 04 Apr 2006 14:44:28 +0200 [thread overview]
Message-ID: <44326A2C.5040407@wxs.nl> (raw)
In-Reply-To: <ops7ge6ktp9niby6@localhost>
nico wrote:
> Hello,
>
> For those who know, I'm trying to have the DocBook callout mechanism with
> context. Basically, there are some numbers in lines of verbatim text, and
> below the verbatim text the numbers are used to explain the portion of the
> text (kind of footnote). Typically the numbers are rendered white in black
> circle. I could use the Dingbats numbers, but it is limited to 10, so that
> I emulated them with the following code to be able to go up to 99.
>
> The questions I have:
> - Is it the right way to do it in context (do I really need metafont?
> Simpler, smarter method?)
> - What should I do to make them as anchors, so that it can be
> cross-referenced (I mean, one can click on a hot spot that jump to the
> number in the verbatim text).
>
> Thanks for any hint,
>
> \newdimen \cowidth
>
> % Maximum size of the circle fits for number 99
> \def\evalwidth%
> {\bgroup%
> \setbox0\hbox{\small\bf{\ss 99}}%
> \global\cowidth=1.2\wd0%
> \egroup}
>
> % Background black circle
> \startuniqueMPgraphic{CoCircle}
> fill fullcircle scaled \overlaywidth withcolor black ;
> \stopuniqueMPgraphic
>
> \defineoverlay[cocircle][\uniqueMPgraphic{CoCircle}]
>
> % Display the black circled number
> \def\conum#1%
> {\evalwidth%
> \framed[background=cocircle,strut=no,frame=off,
> width=\the\cowidth,height=\the\cowidth,offset=overlay]
> {\color[white]{\small\bf{\ss #1}}}}
>
> \starttext
>
> \dorecurse{99}{\conum{\recurselevel}, }
>
> \stoptext
>
\setupcolors[state=start]
\startuniqueMPgraphic{CoCircle}
fill fullcircle xysized (OverlayWidth,OverlayHeight) withcolor OverlayColor ;
\stopuniqueMPgraphic
\defineoverlay[cocircle][\uniqueMPgraphic{CoCircle}]
\definecolor[CoBackgroundColor] [red]
\definecolor[CoForegroundColor] [white]
\def\conum#1%
{\setbox\scratchbox\hbox
{\small\ss\bf
\setbox\scratchbox\hbox{99}%
\hbox to 1.2\wd\scratchbox{\hss#1\hss}}%
\framed
[background=cocircle,
offset=overlay,
frame=off,
width=\the\wd\scratchbox,
height=\the\wd\scratchbox,
backgroundcolor=CoBackgroundColor,
foregroundcolor=CoForegroundColor]
{\box\scratchbox}}
\starttext
\dontleavehmode \dorecurse{99}{\conum{\recurselevel}, }
\stoptext
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
| www.pragma-pod.nl
-----------------------------------------------------------------
next prev parent reply other threads:[~2006-04-04 12:44 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-03 22:52 nico
2006-04-04 9:40 ` Taco Hoekwater
2006-04-04 18:42 ` nico
2006-04-04 12:44 ` Hans Hagen [this message]
2006-04-04 18:56 ` nico
2006-04-04 20:50 ` Hans Hagen
2006-04-04 22:13 ` nico
2006-04-05 7:42 ` Hans Hagen
2006-04-05 19:59 ` nico
2006-04-05 20:42 ` nico
2006-04-05 20:50 ` Hans Hagen
2006-04-05 20:52 ` Hans Hagen
2006-04-05 23:06 ` nico
2006-04-06 0:20 ` nico
2006-04-06 8:17 ` 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=44326A2C.5040407@wxs.nl \
--to=pragma@wxs.nl \
--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).