
カスタムの等幅フォントがあります。このフォントを使用してドキュメント全体を記述します。Lorem Ipsum を実行した結果、等幅フォントが等幅としてレンダリングされていないことがわかりました (つまり、一部の文字幅が圧縮されています。これはおそらく行レンダリング アルゴリズムによるものです)。これを正しく動作させるには、LaTeX 側で何を構成する必要がありますか? XeLaTeX を使用しています。
\documentclass[a4paper,12pt]{article}
\usepackage{fontspec}
\usepackage{fullpage}
\setmainfont{MyFont}
\begin{document}
Hello world hello world Hello world hello world Hello world hello world Hello world hello worldHello world hello world Hello world hello worldHello world hello worldHello world hello world Hello world hello world Hello world hello world Hello world hello world Hello world hello world.
\end{document}
ページあたりの行数と行あたりの文字数(等幅フォントなので)をカスタマイズしたいのですが、少なくともフォント サイズを設定して、ドキュメント全体をそのサイズで等幅フォントにしたいです。
答え1
を使用すると、fullpage
1 行あたりの文字数や 1 ページあたりの行数を設定することはできません。geometry
代わりに を使用すると設定できます。
しかし、行内に文字が収まることは通常不可能なので、文字揃えを行うと文字が垂直に揃わない。ちょうど文字数(スペースを含む)。垂直方向の配置が必要な場合は、\raggedright
と が必要です\frenchspacing
。
この例では、1 行あたり 72 文字 (最大)、1 ページあたり 48 行に設定しました。
\documentclass[a4paper,12pt]{article}
\usepackage{fontspec}
\usepackage{geometry}
\usepackage{kantlipsum}
\setmainfont{Latin Modern Mono}
\newlength{\characterwidth}
\settowidth{\characterwidth}{\normalfont x}
\geometry{textwidth=72\characterwidth,lines=48}
\AtBeginDocument{\raggedright\setlength{\parindent}{3\characterwidth}}
\frenchspacing
\begin{document}
\kant[1-4]
\end{document}
問題がどこにあるかをより明確に示すために、テキスト ブロックの周囲にフレームが付いた最初の行:
ご覧のとおり、最初の 2 行は余白で終わっていますが、3 行目は 72 文字に 2 文字足りません。ハイフネーションをオンにしても、スペースが 1 文字としてカウントされ、ハイフンが別の文字としてカウントされるため、次の単語が収まりません。
答え2
もっと具体的にしてください。少なくとも間隔に関しては、flushleft
不均等な間隔を避けてください。
%!TEX program=xelatex
\documentclass[a4paper,12pt]{article}
\usepackage{fontspec}
\usepackage{fullpage}
\setmainfont{DejaVu Sans Mono}
\begin{document}
\begin{flushleft}
Hello world hello world Hello world hello world Hello world hello world Hello world hello world Hello world hello world Hello world hello worldHello world hello worldHello world hello world Hello world hello world Hello world hello world Hello world hello world Hello world hello world.
\end{flushleft}
\end{document}
ページあたりの行数に関しては、次の点に注意してください。 ページ内の最大行数を制限するにはどうすればよいですか?