
Я хочу использовать шрифты TeX Gyre (особенно Pagella и Pagella Math) с LaTeX+dvips+ps2pdf. В будущем я хочу использовать это для PSTricks, но сначала мне нужно решить проблемы со шрифтами.
Я использую этот код для LaTeX+dvips+ps2pdf
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tgpagella}
\begin{document}
Test in Pagella
\[\sum_{k=1}^n k=\frac{n(n+1)}{2}\]
\end{document}
Создает PDF-файл с текстом в TeX Gyre Pagellaноматематика в Computer Modern (см. скриншот)
При изменении кода на следующий
\documentclass{article}
\usepackage{fontenc,unicode-math}
\setmainfont[Ligatures=TeX]{TeX Gyre Pagella}
\setmathfont[Ligatures=TeX]{TeX Gyre Pagella Math}
\begin{document}
Test in Pagella
\[\sum_{k=1}^n k=\frac{n(n+1)}{2}\]
\end{document}
и обработка его с LuaLaTeX в DVI-режиме работает хорошо. Но запуск dvips
после этого приводит к следующим ошибкам
This is dvips(k) 5.992 Copyright 2012 Radical Eye Software (www.radicaleye.com)
' LuaTeX output 2013.04.01:1811' -> template-pstricks.ps
kpathsea: Invalid fontname `name:TeXGyrePagella:mode=node;script=latn;language=DFLT;+tlig;+trep;', contains ':'
dvips: Font name:TeXGyrePagella:mode=node;script=latn;language=DFLT;+tlig;+trep; not found; using cmr10
</usr/local/texlive/2012/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmr10.pk>kpathsea: Invalid fontname `name:TeXGyrePagellaMath:mode=base;script=math;language=DFLT;+tlig;+trep;+ssty=1;', contains ':'
dvips: Font name:TeXGyrePagellaMath:mode=base;script=math;language=DFLT;+tlig;+trep;+ssty=1; not found; using cmr10
</usr/local/texlive/2012/texmf-dist/fonts/pk/ljfour/public/cm/dpi600/cmr10.pk>
dvips: ! invalid char 119899 from font name:TeXGyrePagellaMath:mode=base;script=math;language=DFLT;+tlig;+trep;+ssty=1;
Я понимаю, что dvips не может работать со шрифтами OpenType, но как мне использовать TeX Gyre Pagella и особенно TeX Gyre Pagella Math вместе с PSTricks? Решения LaTeX или LuaLaTeX были бы очень полезны.
решение1
Я теперь решил проблему с добавлением auto-pst-pdf
в код
\documentclass{article}
\usepackage{auto-pst-pdf}
\usepackage{fontenc,unicode-math}
\setmainfont[Ligatures=TeX]{TeX Gyre Pagella}
\setmathfont[Ligatures=TeX]{TeX Gyre Pagella Math}
\begin{document}
Test in Pagella
\[\sum_{k=1}^n k=\frac{n(n+1)}{2}\]
\end{document}
А компиляция с его помощью lualatex -shell-escape file.tex
дает следующий вывод, содержащий только TeX Gyre Pagella и TeX Gyre Pagella Math.
Огромное спасибо @egreg за эту подсказку.
Улучшено благодаря комментарию @Ulrike Fischer
Очевидно, что нет способа решить эту проблему так, как я хотел, поэтому я снова отредактировал свой код.
\documentclass{article}
\usepackage{pstricks}
\usepackage{xltxtra}
\usepackage{xunicode}
\usepackage{fontenc}
\usepackage{unicode-math}
\setromanfont[Ligatures=TeX]{texgyrepagella-regular.otf}
\setmathfont[Ligatures=TeX]{texgyrepagella-math.otf}
\begin{document}
Test in Pagella
\[\sum_{k=1}^n k=\frac{n(n+1)}{2}\]
\begin{pspicture}(3,3)
\psline{->}(1,1)(3,2)
\psline{->}(1,1)(3,1)
\rput(2,2){$x$}
\end{pspicture}
\end{document}
Обработка с помощью xelatex file.tex
дает желаемый PDF-файл, содержащий TeX Gyre Pagella и Pagella Math
Спасибо @egreg и @Ulrike Fischer за их подсказки. Дальнейшие улучшения приветствуются, я думаю, мне есть чему поучиться.