ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Peter Rolf <indiego@gmx.net>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Position of MetaPost graphics
Date: Sun, 03 Apr 2011 17:33:24 +0200	[thread overview]
Message-ID: <4D989344.3080202@gmx.net> (raw)
In-Reply-To: <AANLkTimcO6VOfOmoKGTyRtKJD7-YjDDauuQQ4ankoLYr@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2489 bytes --]

Am 01.04.2011 11:39, schrieb Tim Steenvoorden:
> Dear list,
> 
> I'm trying to make some fancy chapter headers. With MetaPost I drew a
> wave, which I'd like to place in the margin. I've read details.pdf and
> metafun.pdf, but I don't manage to get the positioning right. The wave
> should begin where the bottomframe ends and move on to the page
> border. Also, the graphic is placed in the page background layer, but
> nevertheless the text after the the graphic is shifted down.
>
> \startuniqueMPgraphic{wave}
> numeric periods, width;
> path wave;
> periods := 3 + 1/4;
> width   := periods * 2*pi;
> wave    := origin for x=0 step 0.1 until width:
>              -- (x,x*sin(x))
>            endfor;
> pickup pencircle scaled 1pt;
> draw wave xscaled (OverlayWidth/width) yscaled (OverlayHeight/(2*width));
> \stopuniqueMPgraphic
> 
> \definelayer[decorations][position=yes,option=test,location=r]
> \setupbackgrounds[page][background=decorations]
> \defineoverlay[wave][\uniqueMPgraphic{wave}]
> 
> \starttext
> 
> {\ss\bfc A chapter title}
> \blank[small]
> \framed[frame=off,bottomframe=on,width=broad,rulethickness=1pt]
>  {\ss\bfx \date \hfill Author Name}
> \setlayer[decorations]{\framed[background=wave,frame=off,width=\cutspace,height=2\lineheight]{}}
> 
> \input knuth
> 
> \stoptext
> 
> What am I doing wrong? Is it a better idea to draw the bottomframe in
> MetaPost too? How do I take care of positioning in that case? Absolute
> positioning is not an option, because the length of the chapterheads
> can be two lines. It should also work on other paper sizes (A5 in
> particular).
>
Don't ask me. I have no experience with layers in combination with
'position=yes'. Anyhow, IMO it's much easier to draw all in one graphic
than try to attach the MP graphic with the frame(d) border. Also: I have
no idea how to do it :-)

I attached a working example, but it's more a starting point than a
final solution.

Best wishes,  Peter

> Kind regards,
> Tim Steenvoorden
> ___________________________________________________________________________________
> 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
> ___________________________________________________________________________________
> 


[-- Attachment #2: position.tex --]
[-- Type: text/x-tex, Size: 950 bytes --]

%\setuppapersize[A5][A5]

\startuniqueMPgraphic{wave}{wl}
numeric periods, width;
path wave;
periods := 3 + 1/4;
width   := periods * 2*pi;
wl      := \MPvar{wl};
ll      := OverlayWidth-wl;
wave    := (origin for x=0 step 0.1 until width:
             .. (x,x*sin(x))
            endfor) xscaled -1; % mirror (no shift correction needed)
pickup pencircle scaled 1pt;
draw reverse(wave xscaled (wl/width) yscaled (OverlayHeight/2width))--(ll,0);
\stopuniqueMPgraphic

\definelayer[decorations][position=yes,option=test,location=r,dx=-\cutspace]
\setupbackgrounds[page][background=decorations]
\defineoverlay[wave][\uniqueMPgraphic{wave}{wl=\cutspace}]


\starttext
\showframe[text]

{\ss\bfc A chapter title}
\blank[small]
\framed[frame=off,width=broad]
 {\ss\bfx \date \hfill Author Name}%
\setlayer[decorations]{\framed[background=wave,frame=off,width=\dimexpr\cutspace+\makeupwidth,height=2\lineheight,offset=overlay]{}}

\input knuth

\stoptext


[-- Attachment #3: Type: text/plain, Size: 485 bytes --]

___________________________________________________________________________________
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:[~2011-04-03 15:33 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-01  9:39 Tim Steenvoorden
2011-04-03 15:33 ` Peter Rolf [this message]
2011-04-03 16:42 ` Aditya Mahajan
     [not found] ` <4D9859C6.9040200@wxs.nl>
2011-04-03 23:22   ` Tim Steenvoorden
2011-04-04  7:33     ` Wolfgang Schuster
2011-04-06 14:04       ` Tim Steenvoorden

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=4D989344.3080202@gmx.net \
    --to=indiego@gmx.net \
    --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).