Seite 1 von 1

Times bzw. das Paket "mathptmx"

Verfasst: Do 17. Jun 2010, 00:29
von ellocco
Mir gefällt die Schrift "Times" besser als die "Latin Modern" (Paket "lmodern"),
aber ich möchte zwei Sachen behalten:
- Den Symbols-Font von "lmodern"
- Boldmath-Option

Hier mein Workaround zur Diskussion. Es gelingt mir zumindest den
symbol-font umzudefinieren. Die Font-Definition wird nur verwendet,
wenn ich von "latin modern" (Paket: lmodern) umschalten möchte
zur "Times" (Paket: mathptmxon):
[...]
\usepackage{ifthen}
\newboolean{mathptmxon}
\setboolean{mathptmxon}{true}
[...]
\usepackage[T1]{fontenc}
\ifthenelse{\boolean{mathptmxon}}{\usepackage{mathptmx}}{\usepackage{exscale}}

[...]
%% if package "mathptmx" is used
\ifthenelse{\boolean{mathptmxon}}{%
  \makeatletter 
    %% change symbols font to standard CM-font
    \SetSymbolFont{symbols}{normal}{OMS}{llcmsy}{m}{n} 
  \makeatother
}{}
[...]
Vielleicht gibt es ja eine elegantere Lösung.
Der Befehl \boldmath wird im Paket "mathptmx" entfernt
und das Paket "bm" sollte jedenfalls laut "psnfss2.pdf" nicht benutzt
werden. Hat jemand eine Idee, wie \boldmath dem Paket "mathptmx"
hinzugefügt werden kann?

Alternativ kann die Times auch nur für die normale Textschrift verwendet
werden und die Matheschrift wird anders definiert. Anbei mal drei Times-
Varianten und die lmodern-Version.
Das Paket "mathtime" konnte ich unter MiKTeX nicht korrekt installieren,
vermutlich liegt es an der fehlenden kommerziellen Schrift von Y&Y.

Grüße

ellocco

\mathbold für das Paket "mathptmx" (times) definie

Verfasst: Do 17. Jun 2010, 15:37
von ellocco
Für mich hat die Frage:
Wie kann ich "\mathbold" für das Paket "mathptmx" (times) definieren?
an Bedeutung verloren, nachdem ich mir die Typographie der Formeln
bei Verwendung des Paketes "mathptmx" genauer angeschaut habe.
Bei der Gelegenheit habe ich mir auch mal zwei andere Schriften angeschaut,
die eine Matheschrift mitbringen, hier mein Beispiellatexscript:
\listfiles                      % show files, that have been used
\errorcontextlines=\maxdimen     % show max lines around error
%% --
\documentclass[a4paper]{article}
\usepackage[resetfonts]{cmap}   % make PDF searchable
\usepackage{fixltx2e}           % fix latex-e bugs
\usepackage[ansinew]{inputenc}  % latin1 includes "ä,ö,ü", ansinew includes win32 specials 
\usepackage[T1]{fontenc}        % enable EC-Fonts (extended cork)
\usepackage{ifthen}             % provides makro `ifthen'
%% fontselection: fontec, fontlmodern, timesdefaultrm, mathptmxon, fontkurier, fontiwona
\def\myfontselection{mathptmxon}
\ifthenelse{\equal{\myfontselection}{fontec}}{\usepackage{mmap}}{}
\ifthenelse{\equal{\myfontselection}{fontlmodern}}{\usepackage{lmodern}}{}
\ifthenelse{\equal{\myfontselection}{mathptmxon}}{\usepackage{mathptmx}}{}
\ifthenelse{\equal{\myfontselection}{timesdefaultrm}}{\usepackage{lmodern}
                                                      \renewcommand{\rmdefault}{ptm}}{}
\ifthenelse{\equal{\myfontselection}{fontkurier}}{\usepackage[light,condensed,math]{kurier}}{}
\ifthenelse{\equal{\myfontselection}{fontiwona}}{\usepackage[light,condensed,math]{iwona}}{}
%% --- End Font Selection ---
\usepackage{amsmath}            % provides a lot math stuff, i.a. subarry 
%% ---
\begin{document}
\section*{Vergleich der Matheschriften}
Schwachstelle vom Paket \textsf{mathptmx} ist der Mathemodus, z.B. $v$ und $\nu$ sehen sich 
sehr ähnlich und die Abstände im Index von mathematischen Symbolen sind nicht immer schön. Deshalb definiere ich \textsf{times} nur als Textschrift, indem ich der Variablen \texttt{\textbackslash{}rmdefault} einen neuen Wert zuweise:\newline{}
latin math v: $v_{\mathit{bla,\, foo}}$ \newline{}
greek math nu: $\nu_{\mathit{bla,\, foo}}$ \newline{}
\end{document}
Grüße

ellocco

Verfasst: Do 17. Jun 2010, 22:58
von ellocco
Hallo,

ich glaube, ich habe einen Trick gefunden, wie ich anderen Schriften,
also auch dem Paket "mathptmx" \boldmath beibringen kann,
ob meine Zeilen andere verherende Auswirkungen haben, weis
ich leider nicht:
[...]
\usepackage[T1]{fontenc} 
\usepackage{mathptmx}           % provides time-font
\usepackage{bm}                 % provides \bm (boldmath)
\renewcommand{\boldmath}{\bm}   % \boldmath =: \bm
\usepackage{amsmath}            % provides a lot math stuff, i.a. subarry
[...]
Grüße

ellocco

Verfasst: So 20. Jun 2010, 22:21
von ellocco
Am geschicktesten finde ich eigendlich im Text "times" zu nehmen und in den Formeln "latin modern":
[...]
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\renewcommand{\rmdefault}{ptm}
\usepackage{amsmath}
Ein Seiteneffekt davon ist jedoch, daß die Zahlen im Text anders aussehen
als in Formeln:
123 sieht anders aus als $123$
Wer einen Text neu anlegt, für den/die kann das sogar ein Vorteil sein,
z.B. Zahlen im Matheschrifttyp und Aufzählungen: 1.), 2.), 3.) im Textschrifttyp.
Jetzt habe ich aber einen längeren Text mit verstreuten Zahlenangaben im
Text und die sollen alle gleich aussehen. Weiß jemand, wie ich die Schrift
von Zahlenangaben im normalen Text beeinflussen kann?

Wenn mir das Suchen der Zahlenangaben im Text zu mühselig ist , kann
ich natürlich auch ganz auf "times" umsteigen, habe dann aber evtl.
Nachteile in der Matheumgebung.
Z.B. ist ein Nachteil der Matheschrift des mathptmx-Pakets aus meiner
Sicht, die Ähnlichkeit vom grieschischen "nu" und dem lateinischen
"v". Um das kleine "v" in der normalen "cmr"-Schrift zu setzen, habe ich
mir ein neues Mathealphabet definiert. Mich interessiert, ob meine
Definition als LaTeX-Sicht Sinn macht, oder ob es einen besseren Weg
gibt, das kleine "v" in der Matheumgebung in der "cmr"-Schrift zu setzen:
[...]
\DeclareMathAlphabet{\mathcm}{T1}{cmr}{m}{it}
\newcommand{\vCM}{\ensuremath{\mathcm{v}}{}}  % velocity, v in CM-font (cmr)
Grüße

ellocco

Verfasst: Mo 21. Jun 2010, 16:38
von ellocco
Bei meinen Versuchen mein Dokument mit dem Paket "mathptmx"
zu erstellen, bin ich auf ein weiteres Problem gestoßen, ich möchte
noch die Kaligraphieschrift "rsfs" aus dem Paket "mathrsfs" verwenden,
was liegt also näher als folgende Schriftendeklaration:
%% --
\DeclareSymbolFont{rsfs}{U}{rsfs}{m}{n}
\DeclareSymbolFontAlphabet{\mathrsfs}{rsfs}
Das klappt auch alles prima, wenn nicht zuviele andere Schriftpakete
dazugeladen werden, irgendwann kommt dann die böse Meldung:
LaTeX Error: Too many math alphabets used in version normal.
Die UK-FAQ macht den Vorschlag das Paket "bm" zu verwenden und die
Register für fette und schwere Schriften von 3 bzw 4 herabzusetzen:
\newcommand\hmmax{0} % default 3
\newcommand\bmmax{0} % default 4
\usepackage{bm}
Sie schreiben zurecht:
(with a bit of luck) the error goes away.
Tja, ich hatte nicht soviel Glück.
Weiß jemand einen Trick, wie sich die Anzahl ladbarer Schriften
erhöhen läßt?

Grüße

ellocco

Anzahl der Matheschriften reduzieren

Verfasst: Mi 23. Jun 2010, 21:23
von ellocco
Ich habe es zwar nicht geschafft die Anzahl der Math Alphabets zu erhöhen
und ich habe auch keinen Workaround gefunden, z.B. 15 laden und das
16. Math Alphabet laden bzw. aus dem Register entfernen je nach dem
was benötigt wird, aber ich habe einen Trick gefunden, wie ich das "v" aus dem
Zeichensatz "cmmi" als mathematischen Buchstaben benutzen kann, ohne
ein neues mathematisches Alphabet definieren zu müssen.
Hier meine Zeichendefinition für ein rundes "v" bei Verwendung des "mathptmx"-
Paketes (es muß vorher das Paket "amsmath" geladen werden,
damit der Befehl \text{} zu Verfügung steht):
\newcommand{\vCM}{\text{\usefont{OML}{cmr}{m}{it}\symbol{118}}}    % velocity, v in CM-font (cmr)
Und dann habe ich im Paket "isomath" einen Trick gefunden, wie
ich Aliase setzen kann, um mit "boldmath" und "boldsymbol" dicke
Symbole zu erzeugen, auch wenn die Schrift das eigentlich nicht
hergibt (wie das Paket "mathptmx"):
\makeatletter 
  %% make boldmath and boldsymbol an alias for \pmb{}
  \def\boldmath{\pmb}
  \def\boldsymbol{\pmb}
\makeatother
Mittlerweile kann ich mein Dokument vollständig in times setzen,
inclusive der mathematischen Zeichen :-)
Bei den Umbauarbeiten ist mir aufgefallen, das die Fehlermeldung:
LaTeX Error: Too many math alphabets used in version normal.
immer weiter nach hinten gerückt ist, zum Schluß habe ich dann noch
$\mathbf X$ in \textbf{\emph{X}} geändert und wieder wurde
ein mathematisches Alphabet weniger geladen :-)
und es lief durch.

Die Verwendung des Paketes "etex" hat hingegen bei mir nichts gebracht.

ellocco

Narrow Times

Verfasst: Do 24. Jun 2010, 23:39
von ellocco
Es gibt auch eine Narrow Variante von Times, mir ist aber schleierhaft,
ob es ein Paket gibt, daß diesen Schriftschnitt unterstützt.
Das hat mich zum Experimentieren gereizt, hier mein Code:
\begin{filecontents*}{t1ptmn.fd}
\ProvidesFile{t1ptmn.fd}[2010/06/01 Priv. Adobe Times Narrow font definition, ptmr8rn]
\DeclareFontFamily{T1}{ptmn}{}
\DeclareFontShape{T1}{ptmn}{m}{n}{
  <-> s * ptmr8rn
  }{}
\endinput
\end{filecontents*}
%% --
\begin{filecontents*}{t1ptmnx.fd}
\ProvidesFile{t1ptmnx.fd}[2010/06/01 Priv. Adobe Times Narrow font definition, .82 ptmr8rn]
\DeclareFontFamily{T1}{ptmnx}{}
\DeclareFontShape{T1}{ptmnx}{m}{n}{
  <-> s * [.82] ptmr8rn
  }{}
\endinput
\end{filecontents*}
%% ---
\listfiles
\errorcontextlines=\maxdimen
\RequirePackage[loading]{tracefnt}
%% ---
\RequirePackage{fix-cm}
\documentclass{article}
% \usepackage[T1]{fontenc}        % enable EC-Fonts (extended cork)
%% --- User Commands   ---
\newcommand{\Times}{\fontencoding{T1}\fontsize{10}{12}\selectfont}
\newcommand{\TimesNarrow}{\fontencoding{T1}\fontfamily{ptmn}\fontshape{n}\fontsize{10}{12}\selectfont}
\newcommand{\TimesNarrowX}{\fontencoding{T1}\fontfamily{ptmnx}\fontshape{n}\fontsize{10}{12}\selectfont}
%% --- LayOut Settings --- 
\setlength{\parindent}{0pt}
\begin{document}
\Times{abcdefghijklmnopqrstuvwxyzäöüßABCDEFGHIJKLMNOPQRSTUVWXYZÄÖܧ}

\TimesNarrow{abcdefghijklmnopqrstuvwxyzäöüßABCDEFGHIJKLMNOPQRSTUVWXYZÄÖܧ}

\TimesNarrowX{abcdefghijklmnopqrstuvwxyzäöüßABCDEFGHIJKLMNOPQRSTUVWXYZÄÖܧ}
\end{document}
Das Script hat ausdrücklich experimentellen Charakter und ich gebe zu,
daß ich nicht wirklich verstehe, was ich da mache, evtl. hat da ja
jemand einen einfach verständlichen Literaturtip.

Außerdem noch zwei weitere Dateien zum Spielen mit Times.

Grüße

ellocco