cerhu > comp.* > comp.text.tex

Raymond Séroul (14/05/2018, 12h06)
Il a peu de temps, j?ai eu besoin d?un \mathbb{1}.

Comme la police courante ne possédait pas cette glyphe,
je me suis tourné vers TeX Gyre Bonum Math où
le caractère visé a pour code 2554.

1/ Avec xelatex, la manip? est triviale.

Une simple boucle permet de'examiner toutes les glyphes
et donc de choisir celle que je désire.

%??????????????????????????????

% !TEX encoding = UTF-8 Unicode
% !TEX TS-program = xelatex

\documentclass[11pt]{article}
\font\testfont="TeX Gyre Bonum Math" at 15pt
\font\rm="TeX Gyre Adventor" at 5pt
\def\one {\hbox{\testfont\XeTeXglyph 2554}}

\parindent 0pt
\hfuzz 100pt
\baselineskip 20pt

\begin{document}

\rm

nombre total de glyphes de la police = \the\XeTeXcountglyphs\testfont

\bigskip

le caractère visé = \one

Visualisation de toutes les glyphes.

\newpage
\newcount\nbchar
\newcount\g

\nbchar \XeTeXcountglyphs\testfont

\noindent
\g=0
\loop \advance\g by 1
\ifnum\g<\nbchar
\setbox1=\hbox{\testfont\XeTeXglyph \the\g }
\hbox to 25mm{\box1\ [\the\g]\hss}
\penalty -100
\repeat

\end{document}

%??????????????????????????????

2/ Je me suis souvenu ensuite d?une conversation avec un ami guru-latex
qui m?avait remonté les bretelles en me disant qu'il préférait pdflatex car
« avec xelatex, le résultat dépend de l'installation ».

J?ai donc voulu être un bon élève et les ennuis ont commencé ?

Je précise que je veux être directement aux commandes ; je ne veux
pas passer par une bureaucratie qui activera 10^3 intermédiaires
sur lesquels je n?ai aucun droit de regard.

(a) Tout d?abord, comment atteindre directement une police ?

Après bien des essais et lectures (incompréhensibles à plus de 50 % pour moi),
j?ai fini par deviner que je devais regarder dans le fichier pdf.map qui se trouve à l?adresse (je travaille avec TeXLive 2018)

/usr/local/texlive/2018/texmf-dist/fonts/map/pdftex/updmap/pdftex.map

J?étale ma science toute neuve pour ceux qui, comme moi, n'y connaissent rien
parce que j?ai mis un certain temps à collecter ces renseignements.

Une ligne du fichier pdftex.map nous raconte sous quel nom les fichiers xxx..pfb
sont connus de pdflatex.

On trouve par exemple :

l7x-qbkr TeXGyreBonum-Regular " encql7x ReEncodeFont " <q-l7x.enc <qbkr.pfb

À gauche, figure le nom de la police employé par TeX,
à droite on a le nom du fichier pfb contenant le tracé des glyphes.
(Entre, je ne sais pas ce que ça veut dire.)

Je peux alors invoquer dans pdflatex la police avec un simple

\font\testfont = l7x-qbkr at 15pt

Ensuite, c'est le blocage total.

(b) Quelle ligne de pdftex.map faut-il choisir ?
Où se trouve la partie math de teX Gyre Bonum ?

(c) Quel est l?analogue pour pdftex de \XeTeXcountglyphs ?

(d) Quel est l?analogue pour pdftex de \XeTeXglyph puisque
\char xx ne fonctionne que si xx ? 256 ?

%??????????????????????????????

% !TEX encoding = UTF-8 Unicode
% !TEX TS-program = pdflatex

\documentclass[11pt]{book}

\font\testfont=l7x-qbkr
\font\rm = zpl-Regular-lf-ly1 at 7pt

\parindent 0pt
\overfullrule=0pt
\hfuzz 100pt

\begin{document}

\rm

é è ç à â ê û î ô ä ë ü ï ö à è ù ì ò

\newpage

\newcount\nbchar
\newcount\g

\nbchar 256

\noindent
\g=0
\loop \advance\g by 1
\ifnum\g<\nbchar
\setbox1=\hbox{\testfont\char \the\g }
\hbox to 25mm{\box1\ \rm [\the\g]\hss}
\penalty -100
\repeat

\end{document}

%??????????????????????????????

En conclusion, je suis effaré par la dérive LaTeX : ce qui était au départ quelque
chose de simple est devenu complètement kafkaïen et techniquement
inaccessible.

C?est comme les Mac d'Apple, tout est collé et soudé?
Ulrike Fischer (14/05/2018, 16h06)
Si j'ai compris tes questions: Ca ne marchera pas avec pdflatex.
pdflatex ne peut accesser seulement les glyphs qui ont été encodé.

Si tu veux savoir si un pfb contient des glyphs que pdflatex
n'utilise pas par default il te faut utiliser un outil comme
fontforge pour inspecter la fonte.

Btw: Je ne pense pas qu'il y a une type1 version de tex gyre bonum
math.
Si tu la veux il te faudra la creer.

> un ami guru-latex
> qui mÿavait remonté les bretelles en me disant qu'il préférait pdflatex car
> « avec xelatex, le résultat dépend de l'installation ».


Avec pdflatex aussi. Si tu utilises des fontes qui sont dans le tex
systeme il n'y a pas vraiment une difference ici.
Daniel Flipo (15/05/2018, 14h26)
Bonjour Raymond,

Le 14/05/2018 à 12:06, Raymond Séroul a écrit :

> Il a peu de temps, j?ai eu besoin d?un \mathbb{1}.
> Comme la police courante ne possédait pas cette glyphe,
> je me suis tourné vers TeX Gyre Bonum Math où
> le caractère visé a pour code 2554.


Pour info lorsque tu cherches un symbole mathématique *dans une police
OpenType* (donc pour XeTeX ou LuaTeX), le fichier unimath-symbols.pdf
(dans TeXLive) montre pour plusieurs polices tous les symboles
disponibles ainsi que leur nom.

Tu constateras que les polices les plus complètes sont STIX (ou ses
variantes XITS et maintenant STIXTwo) ainsi que Asana Math.

Une fois repéré le symbole qui te manque tu peux faire qqch comme ceci
pour ton exemple :

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{article}
\usepackage{unicode-math}
\setmainfont{TeX Gyre Adventor}
\setmathfont{TeX Gyre Bonum Math}
%\setmathfont{XITS Math} % variante
\begin{document}
Du texte et le symbole $\Bbbone$.
\end{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Note que tu peux spécifier une police math de base avec des exceptions
pour des caractères absents (voir la doc unicode-math.pdf p. 7).

> 2/ Je me suis souvenu ensuite d?une conversation avec un ami guru-latex
> qui m?avait remonté les bretelles en me disant qu'il préférait pdflatex car
> « avec xelatex, le résultat dépend de l'installation ».


Je ne partage pas l'avis de ton ami?

Oui, il peut y avoir un problème de portabilité si tu utilises des
fontes système propriétaires : par exemple Cambria sous Windows ou
Hoefler Text sous Mac, moi pauvre linuxien je ne pourrai pas compiler
ton fichier !

Mais si tu te limites aux polices incluses dans TeXLive ou aux polices
systèmes /libres/ il n'y a aucun problème. Tu as le choix entre les
polices LModern, TeX Gyre, les STIX and co, etc.

L'immense avantage de XeTeX ou LuaTeX par rapport à pdfTeX est justement
la gestion des polices : un fichier .otf (ou .ttf) et basta ! ça change
de l'imbroglio des .pfb, .map, .fd, .tfm, .vf, etc.

La (seule ?) contre-partie est un temps de compilation nettement plus
long qu'en pdftex.

Si tu tiens à en rester à pdftex, cherche les caractères manquants dans
des polices Type1 *pas* dans des OpenType. Le \mathbb{1} est présent
dans Fourier par exemple :
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[a4paper]{article}
\usepackage{fourier}
\begin{document}
Du texte et le symbole $\mathbb{1}$.
\end{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

> Je précise que je veux être directement aux commandes ; je ne veux
> pas passer par une bureaucratie qui activera 10^3 intermédiaires
> sur lesquels je n?ai aucun droit de regard.


Donc LaTeX n'est pas fait pour toi, pourquoi ne te cantonnes-tu pas à
Plain (sous XeTeX ou LuaTeX) que tu maîtrises parfaitement ?

Quand tu codes

\font\testfont="TeX Gyre Bonum Math" at 15pt
\def\one {\hbox{\testfont\XeTeXglyph 2554}}

c'est du Plain, si tu utilises ça dans un fichier LaTeX les commandes
LaTeX de changement de taille (\Large, \tiny) seront sans effet sur ton
\one de même que les options 10pt, 11pt, 12pt ! Plain ou LaTeX il faut
choisir ;-)

Amicalement,
Discussions similaires
Rendre un paquetage compatible à la fois avec pdflatex et avec xelatex

Fabrication de pages et de pdf avec PdfTeX

Guillemets \og et \fg avec UTF-8 et PDFTeX ou XeLaTeX : BUG ?

Pb avec pdfTeX


Fuseau horaire GMT +2. Il est actuellement 10h50. | Privacy Policy