Tengo problemas para lograr que ciertas consonantes apiladas se representen correctamente en la salida: aparecen bien en el editor Texworks, MS Word puede mostrarlas, junto con cualquier otro motor capaz de seleccionar una fuente que haya encontrado. Como puede ver en la imagen a continuación, el problema no es omnipresente. A la izquierda, los dos caracteres ဂ, que deberían representarse como ဂ္ဂ, están colocados uno al lado del otro, pero los dos caracteres တ están apilados correctamente. Hay dos ejemplos más de representación inadecuada, y luego también he incluido un ejemplo correcto para demostrar que TeX es capaz de representar correctamente consonantes apiladas en ocasiones.
Probé numerosas fuentes diferentes, aunque eso no logró resolver el problema. Yo diría que podría ser el motor de renderizado (XeLaTeX), aunque eso también me parece poco probable, ya que hay casos conflictivos en los que el mismo conjunto de caracteres se representa correctamente en un caso e incorrectamente en otro, a pesar de existir en el mismo documento. También intenté copiar y pegar caracteres funcionales en las áreas problemáticas sin suerte.
Eliminar la línea XeTeXlinebreaklocale del código soluciona el problema de apilamiento, pero hace que cada línea llegue a los márgenes y, desafortunadamente, no es una solución aceptable para lo que será un libro publicado. Sin embargo, continuaré experimentando con esto y veré si puedo encontrar algo relacionado con esa línea de código.
Por último, algo de código para hacer referencia:
\documentclass{book}
%packages
\usepackage{fontspec} %To use non-standard fonts
%style
\XeTeXlinebreaklocale "my" %Myanmar line and character breaks
\XeTeXlinebreakskip = 0pt plus 2.5pt minus 1pt %2.5pt because at 2 and below still goes past margins.
\setmainfont[Script=Myanmar]{Padauk Book}
\begin{document}
Filler text အဂ္ဂပေမေတ္တာ ဗတ္တိဇံ သင်္ဂြုဟ် အတ္ထုပ္ပတ္တိ
\end{document}
Actualización: siguiendo otra idea que funcionó para las ligaduras jemeres, agregué \XeTeXinterwordspaceshaping=2
, aunque luego me dice "El proceso falló". Al probar con el siguiente ejemplo para un espacio de trabajo simplificado, descubrí que eliminar cualquiera de los tres comandos XeTeX permitirá que el motor se compile. Sin embargo, los tres son necesarios para que las ligaduras se muestren correctamente y el texto encaje dentro de los márgenes. Lo positivo es que el siguiente ejemplo muestra que no se trata de un conflicto con otro paquete, sino más bien de un problema en las interacciones entre estos comandos.
\documentclass{article}
\usepackage{fontspec} %To use non-standard fonts
\XeTeXlinebreaklocale "my" %Myanmar line and character breaks
\XeTeXlinebreakskip = 0pt plus 2pt minus 1pt %2.5pt because at 2 and below still goes past margins.
\XeTeXinterwordspaceshaping=2
\setmainfont[Script=Myanmar]{Padauk Book}
\begin{document}
တစ်နှစ်သုံးဟဲလိုကမ္ဘာကြီး
အပြစ်ဖြေခြင်းသည် ဒေသနာတစ်ခုဖြစ်ပါသည်သို့သော် အပြစ်ဖြေခြင်းပုံစံသည် ပုံသေနည်းတစ်ခုတည်းမဟုတ်ပါ။
ပုစ္ဆာတစ်ပုဒ်ကိုဖြေရှင်းသည်ထက် ထိုအပြစ်ဖြေခြင်းကို ပို၍ခံစားရမည်၊ စိစစ်မှုမဟုတ်၊ နှလုံးသွင်းရပါမည်။
ယေရှူခရစ်တော်၏အပြစ်ဖြေခြင်းသည် လောကနှင့် စကြဝဠာများ၏သိမ်မွေ့နူးညံ့ခြင်း၊ မျက်စိပွင့်စေခြင်း၊ အဂ္ဂပေမေတ္တာ ဒေသနာတစ်ခုဖြစ်သောကြောင့် ထိုဒေသနာကိုရှာဖွေရန် မိမိ၏လုပ်နိုင်စွမ်း အကုန်ပါရမည်။
\end{document}
El error que sale de este documento de prueba es el siguiente: ("C:\Users--\AppData\Local\Programs\MiKTeX 2.9\tex/latex/fontspec\fontspec-xetex.sty"
("C:\Users-- \AppData\Local\Programs\MiKTeX 2.9\tex/latex/base\fontenc.sty"
("C:\Users--\AppData\Local\Programs\MiKTeX 2.9\tex/latex/base\tuenc.def"))
("C:\Usuarios--\AppData\Local\Programs\MiKTeX 2.9\tex/latex/fontspec\fontspec. cfg"))) (test.aux)
Esto parece deberse a un problema al interactuar con fontspec, independientemente de la fuente que utilice.