Hello Hans, The bad news: I think it's the font. The good news: here comes MetaPost to the rescue! I don't have Cambria, so I plucked a cambria.ttf file off the Internet somewhere, which contains both Cambria and Cambria Math. I don't know whether you have the same file/version, so YMMV, but it does exhibit the problem you describe. According to the lovely and free FontForge, * the WHITE SQUARE glyph (U+25A1) is 1060 units high * the SQUARED PLUS glyph (U+229E) is 1630 units high (of which 230 below the baseline). This is in Cambria Math — Cambria does does not have either of these glyphs. I suspect the square size is a design decision: that the designers decided they wanted the white square to match the letters rather than the 'squared *' operators. Anyway, here's a very close MetaPost approximation of the 'squared plus' square, made by looking in with FontForge and copying the glyph dimensions. (And then tweaking them because some things still didn't look right; didn't manage to fix everything, alas.) It scales with the font size. Cheers, Sietse \setuppapersize[A7][A7] \setuppagenumber[state=stop] \setupbodyfont[cambria,40pt] \showframe \showgrid \startuseMPgraphic{square} numeric u, strokewd, strokeht, sqwd, sqht; u := BodyFontSize / 2083; strokewd := 128u; strokeht := 123u; sqwd := 1506u; sqht := 1533u; offset := 200u; pickup pensquare xscaled strokewd yscaled strokeht; draw unitsquare xscaled sqwd yscaled sqht; setbounds currentpicture to boundingbox currentpicture leftenlarged offset rightenlarged offset; \stopuseMPgraphic \def\mysquare{% \lower \dimexpr \bodyfontsize / 2083 * 234 \relax\hbox{\useMPgraphic{square}}% } %%%% try it out %%%% \starttext $\square+\mysquare\boxplus$ \crlf $\mysquare\boxplus$ \page[yes] $+ \ruledhbox{\boxplus}$ \crlf $+ \ruledhbox{\mysquare}$ \crlf $\ruledhbox{\boxplus}$ \crlf $\ruledhbox{\mysquare}$ \stoptext
Thanks, this indeed produces a square more akin to boxtimes in Cambria. But the situation seems even worse than I thought. Under the 40pt fontsize it is apparent that lucidaot's square has a thinner outline then boxtimes. Of the three fonts I tried (cambria, lmodern, lucidaot) it seems lmodern is the only one doing it right.
Hans van der Meer
On 1 May 2013, at 12:17 AM, Sietse Brouwer
Hello Hans,
The bad news: I think it's the font. The good news: here comes MetaPost to the rescue!
I don't have Cambria, so I plucked a cambria.ttf file off the Internet somewhere, which contains both Cambria and Cambria Math. I don't know whether you have the same file/version, so YMMV, but it does exhibit the problem you describe.
According to the lovely and free FontForge, * the WHITE SQUARE glyph (U+25A1) is 1060 units high * the SQUARED PLUS glyph (U+229E) is 1630 units high (of which 230 below the baseline).
This is in Cambria Math — Cambria does does not have either of these glyphs. I suspect the square size is a design decision: that the designers decided they wanted the white square to match the letters rather than the 'squared *' operators.
Anyway, here's a very close MetaPost approximation of the 'squared plus' square, made by looking in with FontForge and copying the glyph dimensions. (And then tweaking them because some things still didn't look right; didn't manage to fix everything, alas.) It scales with the font size.
Cheers, Sietse
\setuppapersize[A7][A7] \setuppagenumber[state=stop] \setupbodyfont[cambria,40pt]
\showframe \showgrid
\startuseMPgraphic{square} numeric u, strokewd, strokeht, sqwd, sqht; u := BodyFontSize / 2083; strokewd := 128u; strokeht := 123u; sqwd := 1506u; sqht := 1533u; offset := 200u; pickup pensquare xscaled strokewd yscaled strokeht; draw unitsquare xscaled sqwd yscaled sqht;
setbounds currentpicture to boundingbox currentpicture leftenlarged offset rightenlarged offset; \stopuseMPgraphic
\def\mysquare{% \lower \dimexpr \bodyfontsize / 2083 * 234 \relax\hbox{\useMPgraphic{square}}% }
%%%% try it out %%%%
\starttext
$\square+\mysquare\boxplus$ \crlf $\mysquare\boxplus$
\page[yes]
$+ \ruledhbox{\boxplus}$ \crlf $+ \ruledhbox{\mysquare}$ \crlf $\ruledhbox{\boxplus}$ \crlf $\ruledhbox{\mysquare}$
\stoptext ___________________________________________________________________________________ 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 ___________________________________________________________________________________
Of the three fonts I tried (cambria, lmodern, lucidaot) it seems lmodern is the only one doing it right.
Depends on what is required to 'do it right' --- the Unicode reference
doesn't mention any mathematical use for U+25A1 white square, so I'm
not sure that "must match squared plus glyph" is a requirement.
Perhaps the creators of Cambria expected the glyph to be used for
itemizations, or footnote marks.
Out of curiosity: what are you using the square for / what does it
stand for, that makes matching squared plus so important to you? There
might even exist some other glyph that is semantically more suitable.
Cheers,
Sietse
On 1 May 2013 10:05, Meer, H. van der
Thanks, this indeed produces a square more akin to boxtimes in Cambria. But the situation seems even worse than I thought. Under the 40pt fontsize it is apparent that lucidaot's square has a thinner outline then boxtimes. Of the three fonts I tried (cambria, lmodern, lucidaot) it seems lmodern is the only one doing it right.
Hans van der Meer
On 1 May 2013, at 12:17 AM, Sietse Brouwer
wrote: Hello Hans,
The bad news: I think it's the font. The good news: here comes MetaPost to the rescue!
I don't have Cambria, so I plucked a cambria.ttf file off the Internet somewhere, which contains both Cambria and Cambria Math. I don't know whether you have the same file/version, so YMMV, but it does exhibit the problem you describe.
According to the lovely and free FontForge, * the WHITE SQUARE glyph (U+25A1) is 1060 units high * the SQUARED PLUS glyph (U+229E) is 1630 units high (of which 230 below the baseline).
This is in Cambria Math — Cambria does does not have either of these glyphs. I suspect the square size is a design decision: that the designers decided they wanted the white square to match the letters rather than the 'squared *' operators.
Anyway, here's a very close MetaPost approximation of the 'squared plus' square, made by looking in with FontForge and copying the glyph dimensions. (And then tweaking them because some things still didn't look right; didn't manage to fix everything, alas.) It scales with the font size.
Cheers, Sietse
\setuppapersize[A7][A7] \setuppagenumber[state=stop] \setupbodyfont[cambria,40pt]
\showframe \showgrid
\startuseMPgraphic{square} numeric u, strokewd, strokeht, sqwd, sqht; u := BodyFontSize / 2083; strokewd := 128u; strokeht := 123u; sqwd := 1506u; sqht := 1533u; offset := 200u; pickup pensquare xscaled strokewd yscaled strokeht; draw unitsquare xscaled sqwd yscaled sqht;
setbounds currentpicture to boundingbox currentpicture leftenlarged offset rightenlarged offset; \stopuseMPgraphic
\def\mysquare{% \lower \dimexpr \bodyfontsize / 2083 * 234 \relax\hbox{\useMPgraphic{square}}% }
%%%% try it out %%%%
\starttext
$\square+\mysquare\boxplus$ \crlf $\mysquare\boxplus$
\page[yes]
$+ \ruledhbox{\boxplus}$ \crlf $+ \ruledhbox{\mysquare}$ \crlf $\ruledhbox{\boxplus}$ \crlf $\ruledhbox{\mysquare}$
\stoptext ___________________________________________________________________________________ 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 ___________________________________________________________________________________
___________________________________________________________________________________ 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 ___________________________________________________________________________________
participants (2)
-
Meer, H. van der
-
Sietse Brouwer