Microtype и LuaTeX: изменение выступания и висячей пунктуации

Microtype и LuaTeX: изменение выступания и висячей пунктуации

Я экспериментирую (используя TeXLive 2013) с тем, чтобы мои знаки препинания полностью выходили на левое и правое поля. Я не знаю, как вставлять изображения, поэтому я постараюсь отформатировать это здесь, чтобы показать, что я имею в виду:

 Text with normal space
"Quotation mark hanging"
 text with normal space

Если я использую pdfTeX и microtype со следующим кодом, то это работает:

\documentclass{article}
\usepackage{microtype}
\LoadMicrotypeFile{cmr}
\SetProtrusion 
{encoding=OT1,family=cmr}
{\textquotedblleft = {1000, },\textquotedblright = { ,1000}}
\begin{document}
Text\\
text\\
"text"\\
text.
\end{document}

(Вы не видите правого поля, но оно тоже работает). Конечно, я хочу использовать LuaLaTeX, чтобы получить все свои модные шрифты, но для простоты:

\documentclass{article}
\usepackage{fontspec}
\usepackage{microtype}
\LoadMicrotypeFile{cmr}
\SetProtrusion 
{encoding=OT1,family=cmr}
{\textquotedblleft = {1000, },\textquotedblright = { ,1000}}
\begin{document}
Text\\
text\\
"text"\\
text.
\end{document}

И компилирую с LuaLaTeX, получаю нормальный выступ (примерно половина кавычки, даже если я использую 0 или 3000 для модификации), но это то же самое, как если бы я не включал все эти "\SetProtrusion". И поскольку я использую LuaLaTeX, я хочу иметь возможность использовать свои собственные шрифты, так что если я это сделаю:

\documentclass{article}
\usepackage{fontspec}
\usepackage{microtype}
\setmainfont[Ligatures=TeX]{Garamond Premier Pro}
% \LoadMicrotypeFile{cmr}
\SetProtrusion 
{encoding=OT1,family=Garamond Premier Pro}
{\textquotedblleft = {1000, },\textquotedblright = { ,1000}}
\begin{document}
Text\\
text\\
"text"\\
text.
\end{document}

В результате получается нечто, ничем не отличающееся от того, если бы я просто использовал микротип без "\SetProtrusion", т. е. нормальная величина выступания.

Пакет hangingсуществует и неплохо справляется, но не включает в себя никаких средств для управления степенью выступания, а руководство предостерегает от его использования, поскольку он обрабатывает знаки препинания как команды, а не как глифы (я не понимаю разницы), и, конечно, я не уверен, как он работает/конфликтует microtype(хотя, полагаю, можно отключить выступание microtypeи просто предоставить hangingэто дело себе?)

Есть также:

\usepackage[factor=3000]{microtype}

Что дает нужную мне левостороннюю пунктуацию, но сильно портит правую сторону.

Есть и другие вопросы, связанные с похожими идеями, но некоторые из них старые, а другие упоминают что-то об использовании, Renderer=Basicно это не только не помогает, но и, похоже, полностью отключает выступ или, по крайней мере, заставляет кавычки выглядеть странно разнесенными. И затем другие вопросы, похоже, не связаны с системными шрифтами.

Так что на самом деле все сводится к тому, что я не могу понять, как задать параметры выступания при использовании LuaLaTeX и microtypeвозможно ли это вообще.

решение1

Хорошо, это работает, видимо, я выбрал неправильную кодировку, и использование звездочки решило проблему:

\documentclass{article}
\usepackage{fontspec}
\usepackage{microtype}
\setmainfont[Ligatures=TeX]{Garamond Premier Pro}
\SetProtrusion 
{encoding= *}
{\textquotedblleft = {1000, },\textquotedblright = { ,1000}}
\begin{document}
Text\\
text\\
"text"\\
text.
\end{document}

Я не уверен, почему OT1 не сработал и есть ли какие-то проблемы с использованием звездочки вместо него, но он работал с несколькими разными шрифтами, так что, полагаю, на мой вопрос дан ответ.

Связанный контент