Pearson, Mark (Capita Symonds) wrote:
Hi all,
I am attempting to insert a symbol at a reduced size within the text flow but I'm not sure how to achieve this.
I've included my test script below.
\starttext
\definefontsynonym[Dingbats][uzdr] \definesymbol[filledSq][\getglyph{Dingbats}{\char110}]
\def\FilledSq{\symbol[filledSq]} \def\FilledSquare{\scale[height=0.5ex]{\symbol[filledSq]}}
\switchtobodyfont[20pt]
\startlines \FilledSq Here is a line This is one line and this should be another \FilledSq Hello again \FilledSquare and again!! and here are some more lines this is the last one \stoplines
\stoptext
When a \FilledSq is inserted, the text which follows appears on the same line but when a \FilledSquare is inserted the text which follows appears on the line below. I'm probably using \scale in an inappropriate way and I'm sure don't know my \vbox's from my \hbox's!
Any examples of how to reduce the size of a glyph whilst still being able to insert it as a normal character in the text flow would be greatly appreciated.
In TeX terms, \scale creates a \hbox. If TeX is in vertical mode (as it is when \startlines is in effect, because every line is a paragraph by itself in the mode), then a simple \hbox is not a good enough hint to make it switch to horizontal (paragraph) mode. So need another command to switch TeX to paragraph building mode, and it is: \def\FilledSquare% {\dontleavehmode\scale[height=0.5ex]{\symbol[filledSq]}} Cheers, Taco