Difference between revisions of "TextBackground"
(Removed outdated comments and unnecessary commands) |
m (Remove MkII hint, enhance markup) |
||
(9 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | |||
− | |||
{{todo|Add more examples of usage of textbackgrounds.}} | {{todo|Add more examples of usage of textbackgrounds.}} | ||
− | Pages, paragraphs, words can have a background | + | Pages, paragraphs, words can have a background color or frame. ConTeXt creates these using [[MetaPost]]. |
− | (See, eventually, the [[manual:details.pdf| details]] manual for further explanations.) | + | (See, eventually, the [[manual:details.pdf| details]] manual or the {{src|anch-bck.mkvi|source}} for further explanations.) |
− | |||
− | |||
− | |||
− | |||
== Example: multi-page backgrounded text == | == Example: multi-page backgrounded text == | ||
Line 31: | Line 25: | ||
frame=off,] | frame=off,] | ||
− | \ | + | \samplefile{knuth} |
\startsecondary | \startsecondary | ||
− | \ | + | \samplefile{knuth} |
\stopsecondary | \stopsecondary | ||
− | \ | + | \samplefile{knuth} |
</context> | </context> | ||
− | == | + | == Background Offset == |
The options left, right, top, bottomoffset can be replaced by backgroundoffset yielding a different result: | The options left, right, top, bottomoffset can be replaced by backgroundoffset yielding a different result: | ||
Line 54: | Line 48: | ||
frame=off,] | frame=off,] | ||
− | \ | + | \samplefile{knuth} |
\startsecondary | \startsecondary | ||
− | \ | + | \samplefile{knuth} |
\stopsecondary | \stopsecondary | ||
− | \ | + | \samplefile{knuth} |
+ | </context> | ||
+ | |||
+ | == Underlining with Text Backgrounds == | ||
+ | |||
+ | Underlining is generally frowned upon by experienced TeXnicians. Occasionally, | ||
+ | however, it is necessary and {{cmd|ul}} or {{cmd|underbar}} doesn’t do what you want. In those | ||
+ | cases using {{cmd|definetextbackground}} for the underlining may also be tried. | ||
+ | |||
+ | <context source="yes"> | ||
+ | \definetextbackground[underline] | ||
+ | [location=text,alternative=1,background=,frame=off] | ||
+ | |||
+ | \definestartstop[underline] | ||
+ | [before={\starttextbackground[underline]}, | ||
+ | after=\stoptextbackground] | ||
+ | |||
+ | \startTEXpage | ||
+ | An example with \startunderline underlined\stopunderline\ text. | ||
+ | \stopTEXpage | ||
</context> | </context> | ||
− | == Example: dashed underbar (by WS, 4/2011) | + | If desired, the location of the line can also be adjusted. |
+ | |||
+ | <context source="yes"> | ||
+ | \startuseMPgraphic{mpos:par:columnset} % Shift underlining down a touch | ||
+ | \iftracepositions show_multi_pars \else draw_multi_pars \fi ; | ||
+ | path p ; p := boundingbox currentpicture ; | ||
+ | currentpicture := currentpicture shifted (0,-StrutDepth/3) ; | ||
+ | setbounds currentpicture to p ; | ||
+ | \stopuseMPgraphic | ||
+ | |||
+ | \definetextbackground[underline] | ||
+ | [location=text,alternative=1,background=,frame=off] | ||
+ | |||
+ | \definestartstop[underline] | ||
+ | [before={\starttextbackground[underline]}, | ||
+ | after=\stoptextbackground] | ||
+ | |||
+ | \startTEXpage | ||
+ | An example with \startunderline underlined\stopunderline\ text. | ||
+ | \stopTEXpage | ||
+ | </context> | ||
+ | |||
+ | |||
+ | === Example: dashed underbar === | ||
+ | (by WS, 4/2011) | ||
<context source="yes"> | <context source="yes"> | ||
Line 77: | Line 114: | ||
\startdashed | \startdashed | ||
− | \ | + | \samplefile{ward} |
\stopdashed | \stopdashed | ||
</context> | </context> | ||
+ | |||
+ | [[Category:Basics]] |
Revision as of 15:06, 31 August 2021
TODO: Add more examples of usage of textbackgrounds. (See: To-Do List) |
Pages, paragraphs, words can have a background color or frame. ConTeXt creates these using MetaPost.
(See, eventually, the details manual or the source for further explanations.)
Contents
Example: multi-page backgrounded text
Perhaps one might like to offset examples from the running text, or signal to the reader that the following paragraphs contain secondary, detailed information that is of interest only to the specialists. This can be achieved using textbackground.
In contrast, Framed creates text blocks that do not span columns or pages.
In the following example, we also reduce the textwidth and bodyfont size.
\definetextbackground[secondary][ location=paragraph, background=color, backgroundcolor=lightgray, leftoffset=.5\bodyfontsize, rightoffset=.5\bodyfontsize, topoffset=.5\bodyfontsize, bottomoffset=.5\bodyfontsize, before={\startnarrower\switchtobodyfont[small]}, after={\stopnarrower}, frame=off,] \samplefile{knuth} \startsecondary \samplefile{knuth} \stopsecondary \samplefile{knuth}
Background Offset
The options left, right, top, bottomoffset can be replaced by backgroundoffset yielding a different result:
\definetextbackground[secondary][ location=paragraph, background=color, backgroundcolor=lightgray, backgroundoffset=.5\bodyfontsize, before={\startnarrower\switchtobodyfont[small]}, after={\stopnarrower}, frame=off,] \samplefile{knuth} \startsecondary \samplefile{knuth} \stopsecondary \samplefile{knuth}
Underlining with Text Backgrounds
Underlining is generally frowned upon by experienced TeXnicians. Occasionally, however, it is necessary and \ul or \underbar doesn’t do what you want. In those cases using \definetextbackground for the underlining may also be tried.
\definetextbackground[underline] [location=text,alternative=1,background=,frame=off] \definestartstop[underline] [before={\starttextbackground[underline]}, after=\stoptextbackground] \startTEXpage An example with \startunderline underlined\stopunderline\ text. \stopTEXpage
If desired, the location of the line can also be adjusted.
\startuseMPgraphic{mpos:par:columnset} % Shift underlining down a touch \iftracepositions show_multi_pars \else draw_multi_pars \fi ; path p ; p := boundingbox currentpicture ; currentpicture := currentpicture shifted (0,-StrutDepth/3) ; setbounds currentpicture to p ; \stopuseMPgraphic \definetextbackground[underline] [location=text,alternative=1,background=,frame=off] \definestartstop[underline] [before={\starttextbackground[underline]}, after=\stoptextbackground] \startTEXpage An example with \startunderline underlined\stopunderline\ text. \stopTEXpage
Example: dashed underbar
(by WS, 4/2011)
\definetextbackground [dashed] [location=text, framecolor=black, alternative=1, voffset=-\strutdp, background=, frame=off, dash=1] \startdashed \samplefile{ward} \stopdashed