Changes

Jump to navigation Jump to search
m
→‎Rotating: add mirror
< [[Graphics]] | [[Using_Graphics]] >You can use the commands for text, but also for graphics or other “building blocks”.
In [http://source.contextgarden.net/tex/context/base/core-mis.mkii core-mis.mkii] ([http://source.contextgarden.net/tex/context/base/core-mis.mkiv core-mis.mkiv] for MkIV) there are some handy commands for graphical text manipulation defined.=Scaling=
This page’s title The {{cmd|scale}} command is misleadingall-purpose, since you can use the commands also for graphics and other “building blocks”scale by factors or to a defined size.
== \scale == You As a special case, you can insert symbols at a reduced size in the text flowusing {{cmd|getscaledglyph}}.
<context source=yes>
</context>
 == \mirror =Mirroring =
<context source=yes>
There is a \mirror{\sl mirorred} {\sl word} in this sentence.
</context>
<code>\{{cmd|mirror</code> }} makes a <code>\hbox</code> and mirrors the contents. If you want to have a longer paragraph mirrored, you have to make a <code>\vbox</code> manually.
<context source=yes>
\mirror{\vbox{Alice was beginning to get very tired of sitting by her sister on the bank, and of having nothing to do:
once or twice she had peeped into the book her sister was reading, but it had no pictures or conversations in it, `\quote{and what is the use of a book,' } thought Alice `\quote{without pictures or conversation?'}}}
</context>
=Rotating = \ You can {{cmd|rotate ==}} something by an arbitrary angle like
You can rotate something by an arbitrary angle by saying something like
<context source=yes>
\rotate[rotation=42]{the ultimate answer}
</context>
<context source=yes>\ss Next generation L\rotate{m}\rotate{m}TSP\mirror{3}Al\rotate[rotation=270,location= location high]{v}?</context> You can rotate a long paragraph as well. ==Location parameter ===
An example by Hans Hagen showing the The influence of <code>location=</code> argument at different angles:
<context source=yes>
</context>
=== Rotating Figures ===
 
The following code shows how the location parameter influences rotation with a frame:
 
<texcode>
\setupbodyfont[sans, 30pt]
\setuppagenumbering[location=,]
\showframe
 
\starttext
\topskip4cm
\dostepwiserecurse{0}{360}{10}{
\doloopoverlist{normal,default,depth,fit,broad,high,middle}{
\ruledhbox{\rotate[rotation=\recurselevel, location=\recursestring]{%
\framed
[width=\textheight, height=\textwidth, rulethickness=5pt,
depth=0cm, foregroundstyle=\bfd]
{\recursestring, \recurselevel°}
}
}
}
}
\stoptext
</texcode>
 
or, even nicer:
You can <context source="yes">\useMPlibrary[dum]\setupexternalfigures[width=4em,height=3em,frame=on,]\dostepwiserecurse{0}{359}{45}{{\bf\recurselevel˚}\quad \doloopoverlist{normal,depth,fit,broad,high,middle}{ \dontleavehmode\ruledhbox{% \rotate a long paragraph as well.[rotation=\recurselevel, location=\recursestring]{% \externalfigure[\recursestring] }% }% }\par}</context>
=== in In a box ===
Depending on the usage you will sometimes probably want to include the content of what you wish to rotate into a box. Compare the following two examples:
</context>
=== page Page dependent landscape figures ===
Sometimes, in a double-sided portrait document, you may wish to rotate a landscape figure so that the top is towards the spine of the book – no matter whether it's it’s on an odd or even page. In this case the <{{cmd>|doifoddpageelse</cmd> }} command can help:
<texcode>
This example is by Wolfgang, from [http://www.ntg.nl/pipermail/ntg-context/2011/059834.html the thread starting here]. The thread contains other solutions to the problem.
== \clip =Clipping=
You can adjust the size of an element by cropping/clipping its borders:
<context source="yes">
\setupcolors[state=start]
\definedfont[SansBold at 20mm]
\baselineskip 0pt % switch off the space between the stripes
\lineskip 0pt
\def\MyLogo{\vbox{\hbox{\CONTEXT}\null}} % null is necessary for the whole bounding box
\clip[ny=3,y=1]{\color[yellow]{\MyLogo}}\clip[ny=3,y=2]{\color[orange]{\MyLogo}}\clip[ny=3,y=3]{\color[red]{\MyLogo}}</context> And here’s how to cut out a piece by measures (see also {{cmd|setupclipping}} and {{cmd|clip}}): <context source="yes">\clip[width=3cm, height=1cm, hoffset=1cm, voffset=5mm]{\externalfigure[cow][width=5cm]}
</context>
see also <cmd>setupclipping<=Further reading= Graphic transformations are implemented in [https:/cmd> /source.contextgarden.net/tex/context/base/mkiv/grph-trf.mkiv grph-trf.mkiv] and <cmd>clip<[https://source.contextgarden.net/tex/context/base/mkiv/cmd>grph-trf.lua grph-trf.lua]. [[Category:Basics]][[Category:Graphics]]

Navigation menu