summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/fontinst/smblmtx/textcomp.mtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/fontinst/smblmtx/textcomp.mtx')
-rw-r--r--Master/texmf-dist/tex/fontinst/smblmtx/textcomp.mtx561
1 files changed, 561 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/fontinst/smblmtx/textcomp.mtx b/Master/texmf-dist/tex/fontinst/smblmtx/textcomp.mtx
new file mode 100644
index 00000000000..ac2216139f2
--- /dev/null
+++ b/Master/texmf-dist/tex/fontinst/smblmtx/textcomp.mtx
@@ -0,0 +1,561 @@
+% Copyright 1997, 1998 Sebastian Rahtz,
+% copyright 1998, 1999, 2003 the fontinst maintenance team and
+% any individual authors listed elsewhere in this file.
+% All rights reserved.
+%
+% This file is part of the fontinst system version 1.9.
+% -----------------------------------------------------
+%
+% It may be distributed under the terms of the LaTeX Project Public
+% License, as described in lppl.txt in the base LaTeX distribution.
+% Either version 1.0 or, at your option, any later version.
+%
+%%% ====================================================================
+%%% @TeX-font-metrics-file{
+%%% author = "Sebastian Rahtz and Ulrik Vieth and
+%%% Walter Schmidt and Lars Hellstr{\"o}m",
+%%% version = "1.926",
+%%% date = "2003-07-13",
+%%% time = "23:34:04 +02:00",
+%%% filename = "textcomp.mtx",
+%%% email = "w-a-schmidt@arcor.de",
+%%% URL = "http://www.tug.org/applications/fontinst/",
+%%% codetable = "ISO/ASCII",
+%%% keywords = "metrics, TeX, PostScript",
+%%% supported = "yes",
+%%% abstract = "This is a font metrics file, for use with the
+%%% fontinst utility. It provides the defaults
+%%% used to install the text companion glyphs.",
+%%% package = "fontinst",
+%%% dependencies = "fontinst.sty, fontdoc.sty",
+%%% }
+%%% ====================================================================
+
+\relax
+
+\documentclass[twocolumn]{article}
+\usepackage{fontdoc}[2002/06/30] %Just guessing.
+
+\title{The \textsf{fontinst} text companion glyphs}
+\author{Sebastian Rahtz\and Ulrik Vieth\and Walter Schmidt\and
+ Lars Hellstr\"om}
+\date{Version 1.926}
+
+\showbranches
+
+\begin{document}
+\maketitle
+
+\section{Introduction}
+
+This document describes the glyphs used by the \textsf{fontinst}
+package when generating \TeX{} text companion fonts.
+
+\metrics
+
+\needsfontinstversion{1.917}
+
+% \unfakable is a glyph which can't be faked.
+
+\setcommand\unfakable#1{
+ \setglyph{#1}
+ \glyphrule{500}{500}
+ \glyphwarning{missing glyph `#1'}
+ \endsetglyph
+}
+% \unfakableaccent is similar, but has an ``accent position''
+\setcommand\unfakableaccent#1{
+ \setglyph{#1}
+ \moveup{\add{\int{xheight}}{50}}
+ \movert{\scale{\add{\int{xheight}}{50}}{\int{italicslant}}}
+ \glyphrule{250}{\sub{\sub{\int{ascender}}{\int{xheight}}}{100}}
+ \movert{\neg{\scale{\add{\int{xheight}}{50}}{\int{italicslant}}}}
+ \glyphwarning{missing glyph `#1'}
+ \endsetglyph
+}
+
+% \fakeglyph replaces glyph #1 by #2, if it exists.
+
+\setcommand\fakeglyph#1#2{
+ \ifisglyph{#2}\then
+ \setglyph{#1}
+ \glyph{#2}{1000}
+ \endsetglyph
+ \Fi
+}
+
+
+\begincomment
+\section{Default values}
+\endcomment
+
+\setint{italicslant}{0}
+\setint{xheight}{\height{x}}
+\setint{capheight}{\height{A}}
+\setint{ascender}{\height{d}}
+\setint{descender}{\depth{g}}
+\setint{underlinethickness}{40}
+
+% Vertical symmetry axis. (WaS)
+\setint{vaxis}{\scale{\sub{\height{parenleft}}{\depth{parenleft}}}{500}}
+
+
+\begincomment
+\section{Oldstyle numerals}
+\endcomment
+
+\unfakable{zerooldstyle}
+\unfakable{oneoldstyle}
+\unfakable{twooldstyle}
+\unfakable{threeoldstyle}
+\unfakable{fouroldstyle}
+\unfakable{fiveoldstyle}
+\unfakable{sixoldstyle}
+\unfakable{sevenoldstyle}
+\unfakable{eightoldstyle}
+\unfakable{nineoldstyle}
+
+
+\begincomment
+\section{Capital accents}
+\endcomment
+
+\fakeglyph{capitalgrave}{grave}
+\fakeglyph{capitalacute}{acute}
+\fakeglyph{capitalcircumflex}{circumflex}
+\fakeglyph{capitaltilde}{tilde}
+\fakeglyph{capitaldieresis}{dieresis}
+\fakeglyph{capitalhungarumlaut}{hungarumlaut}
+\fakeglyph{capitalring}{ring}
+\fakeglyph{capitalcaron}{caron}
+\fakeglyph{capitalbreve}{breve}
+\fakeglyph{capitalmacron}{macron}
+\fakeglyph{capitaldotaccent}{dotaccent}
+\fakeglyph{capitalcedilla}{cedilla}
+\fakeglyph{capitalogonek}{ogonek}
+
+
+\begincomment
+\section{ASCII-style accents}
+\endcomment
+
+\ifisglyph{asciitilde}\then
+ \setglyph{tildelow}
+ \glyph{asciitilde}{1000}
+ \endsetglyph
+\Fi
+
+\ifisglyph{grave}\then
+ \setglyph{asciigrave}
+ \glyph{grave}{1000}
+ \endsetglyph
+\Fi
+
+\ifisglyph{breve}\then
+ \setglyph{asciibreve}
+ \glyph{breve}{1000}
+ \endsetglyph
+\Fi
+
+\ifisglyph{acute}\then
+ \setglyph{asciiacutedbl}
+ \ifisint{monowidth}\then
+ \glyph{acute}{1000}
+ \glyph{acute}{1000}
+ \Else
+ \glyph{acute}{1000}
+ \movert{\neg{\scale{\width{acute}}{333}}}
+ \glyph{acute}{1000}
+ \Fi
+ \endsetglyph
+\Fi
+
+\ifisglyph{grave}\then
+ \setglyph{asciigravedbl}
+ \ifisint{monowidth}\then
+ \glyph{grave}{1000}
+ \glyph{grave}{1000}
+ \Else
+ \glyph{grave}{1000}
+ \movert{\neg{\scale{\width{grave}}{333}}}
+ \glyph{grave}{1000}
+ \Fi
+ \endsetglyph
+\Fi
+
+\ifisglyph{caron}\then
+ \setglyph{asciicaron}
+ \glyph{caron}{1000}
+ \endsetglyph
+\Fi
+
+\ifisglyph{dieresis}\then
+ \setglyph{asciidieresis}
+ \glyph{dieresis}{1000}
+ \endsetglyph
+\Fi
+
+\ifisglyph{macron}\then
+ \setglyph{asciimacron}
+ \glyph{macron}{1000}
+ \endsetglyph
+\Fi
+
+\ifisglyph{acute}\then
+ \setglyph{asciiacute}
+ \glyph{acute}{1000}
+ \endsetglyph
+\Fi
+
+
+\begincomment
+\section{Glyphs}
+\endcomment
+
+\setglyph{capitalcompwordmark}
+ \glyphrule{0}{\int{capheight}}
+\endsetglyph
+\setint{capitalcompwordmark-spacing}{0}
+
+\setglyph{ascendercompwordmark}
+ \glyphrule{0}{\int{ascender}}
+\endsetglyph
+\setint{ascendercompwordmark-spacing}{0}
+
+% centers wrt/ vertical symmetry axis. (WaS)
+\ifisglyph{asterisk}\then
+ \resetglyph{asteriskcentered}
+ \moveup{\neg{\sub
+ {\scale{\sub{\height{asterisk}}{\depth{asterisk}}}{500}}
+ {\int{vaxis}}
+ }}
+ \glyph{asterisk}{1000}
+ \resetdepth{0}
+ \endresetglyph
+\Fi
+
+% assumes that 2/3em = 667 and \width{endash} about 500
+\ifisglyph{endash}\then
+ \setglyph{twelveudash}
+ \ifisint{monowidth}\then
+ \glyph{hyphen}{1000}
+ \glyph{hyphen}{1000}
+ \Else
+ \glyph{endash}{1000}
+ \movert{\sub{667}{\mul{2}{\width{endash}}}}
+ \glyph{endash}{1000}
+ \comment{This assumes that \(2/3\,\mathrm{em} = 667\) and
+ that the leading of the \texttt{endash} is less than
+ \(333/4\).}
+ \Fi
+ \endsetglyph
+\Fi
+
+% assumes that 3/4em = 750 and \width{endash} = 500
+\ifisglyph{endash}\then
+ \setglyph{threequartersemdash}
+ \ifisint{monowidth}\then
+ \glyph{hyphen}{1000}
+ \glyph{hyphen}{1000}
+ \Else
+ \glyph{endash}{1000}
+ \movert{\sub{750}{\mul{2}{\width{endash}}}}
+ \glyph{endash}{1000}
+ \comment{This assumes that the leading of the
+ \texttt{endash} is less than \(250/4\).}
+ \Fi
+ \endsetglyph
+\Fi
+
+% questionable fakery, doesn't really work with all fonts
+\ifisglyph{bracketleft}\then
+ \setglyph{openbracketleft}
+ \ifisint{monowidth}\then
+ \glyph{bracketleft}{1000}
+ \glyph{bracketleft}{1000}
+ \Else
+ \glyph{bracketleft}{1000}
+ \movert{\neg{\scale{\width{bracketleft}}{666}}}
+ \glyph{bracketleft}{1000}
+ \comment{This is questionable fakery, which doesn't
+ really work with all fonts.}
+ \Fi
+ \endsetglyph
+\Fi
+
+% questionable fakery, doesn't really work with all fonts
+\ifisglyph{bracketright}\then
+ \setglyph{openbracketright}
+ \ifisint{monowidth}\then
+ \glyph{bracketright}{1000}
+ \glyph{bracketright}{1000}
+ \Else
+ \glyph{bracketright}{1000}
+ \movert{\neg{\scale{\width{bracketright}}{666}}}
+ \glyph{bracketright}{1000}
+ \comment{This is questionable fakery, which doesn't
+ really work with all fonts.}
+ \Fi
+ \endsetglyph
+\Fi
+
+% questionable fakery, doesn't really work with all fonts
+\ifisglyph{bar}\then
+ \setglyph{bardbl}
+ \ifisint{monowidth}\then
+ \glyph{bar}{1000}
+ \glyph{bar}{1000}
+ \Else
+ \glyph{bar}{1000}
+ \movert{\neg{\scale{\width{bar}}{333}}}
+ \glyph{bar}{1000}
+ \comment{This is questionable fakery, which doesn't
+ really work with all fonts.}
+ \Fi
+ \endsetglyph
+\Fi
+
+\ifareglyphs{degree,C}\then
+ \setglyph{centigrade}
+ \glyph{degree}{1000}
+ \glyph{C}{1000}
+ \resetitalic{\italic{C}}
+ \endsetglyph
+\Fi
+
+\ifisglyph{Euro}\then
+ \setglyph{euro}
+ \glyph{Euro}{1000}
+ \endsetglyph
+\Else\ifisglyph{C}\then
+ \setglyph{euro}
+ \movert{50}
+ \push
+ \moveup{\half{\sub{\height{C}}{\depth{C}}}}
+ \movert{\scale
+ {\half{\sub{\height{C}}{\depth{C}}}}
+ {\int{italicslant}}
+ }
+ \push
+ \moveup{\scale{\int{underlinethickness}}{1500}}
+ \glyphrule{\scale{\width{C}}{750}}{\int{underlinethickness}}
+ \pop
+ \moveup{\scale{\int{underlinethickness}}{-1500}}
+ \glyphrule{\scale{\width{C}}{700}}{\int{underlinethickness}}
+ \comment{That this bar is slightly shorter than the previous
+ is deliberate. That the two bars are not quite centered
+ around the vertical midpoint is also deliberate.}
+ \pop
+ \movert{50}
+ \comment{This movement should be much larger for some fonts,
+ e.g. New Century Schoolbook Italic, but experiments indicate
+ that it is independent of the italic slant.}
+ \glyph{C}{1000}
+ \resetitalic{\italic{C}}
+ \endsetglyph
+\Fi\Fi
+
+\ifareglyphs{question,exclam}\then
+ \setglyph{interrobang}
+ \push
+ \movert{\add{\half{\sub{\width{question}}{\width{exclam}}}}{-50}}
+ \comment{The extra $-50$ serves to separate the exclamation mark
+ from the right side of the question mark.}
+ \glyph{exclam}{1000}
+ \pop
+ \glyph{question}{1000}
+ \endsetglyph
+\Fi
+\ifareglyphs{questiondown,exclamdown}\then
+ \setglyph{interrobangdown}
+ \push
+ \movert{\add
+ {\half{\sub{\width{questiondown}}{\width{exclamdown}}}}
+ {50}
+ }
+ \glyph{exclamdown}{1000}
+ \pop
+ \glyph{questiondown}{1000}
+ \endsetglyph
+\Fi
+
+
+\begincomment
+\section{Unfakable glyphs}
+In general, every glyph is unfakable unless we know how to fake it.
+\endcomment
+
+\unfakableaccent{capitalgrave} % 8r,8y
+\unfakableaccent{capitalacute} % 8r,8y
+\unfakableaccent{capitalcircumflex} % 8r,8y
+\unfakableaccent{capitaltilde} % 8r,8y
+\unfakableaccent{capitaldieresis} % 8r,8y
+\unfakableaccent{capitalhungarumlaut} % 8r,8y
+\unfakableaccent{capitalring} % 8r,8y
+\unfakableaccent{capitalcaron} % 8r,8y
+\unfakableaccent{capitalbreve} % 8r,8y
+\unfakableaccent{capitalmacron} % 8r,8y
+\unfakableaccent{capitaldotaccent} % 8r,8y
+\unfakable{capitalcedilla} % 8r,8y
+\unfakable{capitalogonek} % 8r,8y
+\unfakable{quotesinglbase} % 8r,8y
+\unfakable{quotedblbase} % 8r,8y
+\unfakable{twelveudash} % faked 8r,8x
+\unfakable{threequartersemdash} % 8x (Adobe)
+\unfakable{arrowleft}
+\unfakable{arrowright}
+\unfakableaccent{tieaccentlowercase}
+\unfakableaccent{tieaccentcapital}
+\unfakableaccent{newtieaccentlowercase}
+\unfakableaccent{newtieaccentcapital}
+\unfakable{blank}
+\unfakable{dollar} % 8r,8y
+\unfakable{quotesingle} % 8r,8y
+\unfakable{asteriskcentered} % faked 8r,8y
+\unfakable{comma} % 8r,8y
+\unfakable{hyphendbl}
+\unfakable{period} % 8r,8y
+\unfakable{fraction} % 8r,8y
+\unfakable{angbracketleft}
+\unfakable{minus} % 8r,8y
+\unfakable{angbracketright}
+\unfakable{Omegainv}
+\unfakable{bigcircle}
+\unfakable{Omega}
+\unfakable{openbracketleft} % faked 8r,8y
+\unfakable{openbracketright} % faked 8r,8y
+\unfakable{arrowup}
+\unfakable{arrowdown}
+\unfakable{asciigrave} % 8r,8y
+\unfakable{born}
+\unfakable{divorced}
+\unfakable{died}
+\unfakable{leaf}
+\unfakable{married}
+\unfakable{musicalnote}
+\unfakable{tildelow} % 8r,8y
+\unfakable{hyphendblchar}
+\unfakable{asciibreve} % 8r,8y
+\unfakable{asciicaron} % 8r,8y
+\unfakable{asciiacutedbl} % faked 8r,8y
+\unfakable{asciigravedbl} % faked 8r,8y
+\unfakable{dagger} % 8r,8y
+\unfakable{daggerdbl} % 8r,8y
+\unfakable{bardbl} % faked 8r,8y
+\unfakable{perthousand} % 8r,8y
+\unfakable{bullet} % 8r,8y
+\unfakable{centigrade} % faked 8r,8y
+\unfakable{dollaroldstyle} % 8x (Adobe)
+\unfakable{centoldstyle} % 8x (Adobe)
+\unfakable{florin} % 8r,8y
+\unfakable{colonmonetary} % 8x (Adobe)
+\unfakable{won}
+\unfakable{naira}
+\unfakable{guarani}
+\unfakable{peso}
+\unfakable{lira} % 8x (URW)
+\unfakable{recipe}
+\unfakable{interrobang}
+\unfakable{interrobangdown}
+\unfakable{dong}
+\unfakable{trademark} % 8r,8y
+\unfakable{pertenthousand} % faked 8x
+\unfakable{pilcrow}
+\unfakable{baht}
+\unfakable{numero}
+\unfakable{discount}
+\unfakable{estimated}
+\unfakable{openbullet}
+\unfakable{servicemark}
+\unfakable{quillbracketleft}
+\unfakable{quillbracketright}
+\unfakable{cent} % 8r,8y
+\unfakable{sterling} % 8r,8y
+\unfakable{currency} % 8r,8y
+\unfakable{yen} % 8r,8y
+\unfakable{brokenbar} % 8r,8y
+\unfakable{section} % 8r,8y
+\unfakable{asciidieresis} % 8r,8y
+\unfakable{copyright} % 8r,8y
+\unfakable{ordfeminine} % 8r,8y
+\unfakable{copyleft}
+\unfakable{logicalnot} % 8r,8y
+\unfakable{circledP}
+\unfakable{registered} % 8r,8y
+\unfakable{asciimacron} % 8r,8y
+\unfakable{degree} % 8r,8y
+\unfakable{plusminus} % 8r,8y
+\unfakable{twosuperior} % 8r,8y
+\unfakable{threesuperior} % 8r,8y
+\unfakable{asciiacute} % 8r,8y
+\unfakable{mu} % 8r,8y
+\unfakable{paragraph} % 8r,8y
+\unfakable{periodcentered} % 8r,8y
+\unfakable{referencemark}
+\unfakable{onesuperior} % 8r,8y
+\unfakable{ordmasculine} % 8r,8y
+\unfakable{radical}
+\unfakable{onequarter} % 8r,8y
+\unfakable{onehalf} % 8r,8y
+\unfakable{threequarters} % 8r,8y
+\unfakable{euro} % faked 8r,8y
+\unfakable{multiply} % 8r,8y
+\unfakable{divide} % 8r,8y
+
+
+% \begincomment
+% \section{Accents}
+% \TeX's math accent-positioning requires accents to have zero depth,
+% but is that really relevant for these accents?
+% \endcomment
+%
+% \setcommand\zerodepth#1{
+% \ifisglyph{#1}\then
+% \resetglyph{#1}
+% \glyph{#1}{1000}
+% \resetdepth{0}
+% \endresetglyph
+% \Fi
+% }
+% \zerodepth{capitalgrave}
+% \zerodepth{capitalacute}
+% \zerodepth{capitalcircumflex}
+% \zerodepth{capitaltilde}
+% \zerodepth{capitaldieresis}
+% \zerodepth{capitalhungarumlaut}
+% \zerodepth{capitalring}
+% \zerodepth{capitalcaron}
+% \zerodepth{capitalbreve}
+% \zerodepth{capitalmacron}
+% \zerodepth{capitaldotaccent}
+
+\endmetrics
+
+\section{Changes}
+
+1999/10/25: Definition of \verb|\unfakable| simplified. (UV\&LH)
+Rationale: It is thoroughly confusing if the size of the black box
+created by \verb|\unfakable| depends on the metrics of an unencoded
+glyph that isn't accessible and therefore unavailable for all
+pratical purposes.
+
+February--March 2003: Explicitly centering the
+\texttt{asteriskcentered}. Introduced the \textit{vaxis} integer. (WaS)
+
+2003/07/09:
+Making use of \verb|\showbranches|, \verb|\begincomment|, and
+\verb|\endcomment|. Make definitions of \texttt{twelveudash} and
+\texttt{threequartersemdash} less dependent on the exact width of
+\texttt{endash}. Added a fake definition of \texttt{euro}. (LH)
+
+2003/07/10:
+Commented out section on zero-depth accents. (LH) Rationale:
+\texttt{TS1}-encoded fonts are, to my knowledge, never used in math.
+
+2003/07/13:
+Added some \verb|\resetitalic| commands. Added fakes for
+\texttt{interrobang} and \texttt{interrobangdown}. Using an
+\verb|unfakableaccent| for unfakable accents. (LH) Rationale:
+The result becomes much more readable.
+
+\end{document}