特定の積み重ねられた子音を出力で適切にレンダリングするのに問題があります。それらは Texworks エディターでは問題なく表示され、MS Word や、私が見つけたフォントを選択できる他のエンジンでも表示できます。下の画像からわかるように、この問題はどこにでもあるわけではありません。左側では、ဂ္ဂ としてレンダリングされるべき 2 つの ဂ 文字が隣り合って配置されていますが、2 つの တ 文字は正しく積み重ねられています。不適切なレンダリングの例がさらに 2 つあり、TeX が積み重ねられた子音を実際に正しくレンダリングできることを実証するために、正しい例も示しました。
さまざまなフォントを試してみましたが、問題は解決しませんでした。レンダリング エンジン (XeLaTeX) が原因かもしれないと主張しますが、同じドキュメント内に同じ文字セットが存在するにもかかわらず、あるインスタンスでは正しくレンダリングされ、別のインスタンスでは正しくレンダリングされないという矛盾したケースがあるため、その可能性も低いように思われます。また、問題のある領域に機能する文字をコピーして貼り付けることも試みましたが、うまくいきませんでした。
コードから XeTeXlinebreaklocale 行を削除すると、スタックの問題は解決しますが、すべての行が余白にはみ出すため、残念ながら出版される本としては受け入れられる解決策ではありません。ただし、この実験を続けて、そのコード行に関連する何かを見つけ出せるかどうか確認するつもりです。
最後に、参考となるコードをいくつか示します。
\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}
更新: クメール語の合字に機能した別のアイデアに従って、 を追加しました\XeTeXinterwordspaceshaping=2
が、「プロセスがクラッシュしました」というメッセージが表示されます。簡素化された作業スペースの以下の例でテストしたところ、3 つの XeTeX コマンドのいずれかを削除すると、エンジンがコンパイルできることがわかりました。ただし、合字を適切に表示し、テキストを余白内に収めるには、3 つすべてが必要です。良い面としては、以下の例では、別のパッケージとの競合ではなく、これらのコマンド間の相互作用の問題であることがわかります。
\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}
このテスト ドキュメントから出力されるエラーは次のとおりです: ("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:\Users--\AppData\Local\Programs\MiKTeX 2.9\tex/latex/fontspec\fontspec. cfg"))) (test.aux)
これは、使用するフォントに関係なく、fontspec とのやり取りに問題があるようです。