latex页面有背景网格线问题

latex页面有背景网格线问题

我尝试使用 background 包在文本下绘制网格线。它有效,但仍有一个问题:

如果第一行以 'a' 开头,则位置位于第一条网格线,但预期位置应该是第二条网格线。 如果将其更改为 'b',则 'b' 将占据第一条和第二条网格线,这与预期一致。

听起来网格线偏移不正确!

\documentclass[a4paper]{article}
\usepackage{geometry}
\geometry{margin=0.5in}
\setlength{\parindent}{0pt}
\usepackage{background}
\usepackage{tikzpagenodes}
\SetBgScale{1}
\SetBgAngle{0}
\SetBgPosition{current page text area.north west}
\SetBgColor{black}
\SetBgContents{
  \begin{tikzpicture}[remember picture,overlay]
      \coordinate (O) at (0,0);
       \def\offset{60pt}
      \pgfmathsetlengthmacro{\rows}{floor(\textheight/\offset)}
      \pgfmathsetlengthmacro{\dx}{floor(40/3}
    \foreach \i in {0,1,...,\rows} {
        \foreach \j in {0,...,3} {
            \draw[line width=0.5pt] ([yshift=-\i*\offset-\j*\dx]O) -- ++(\textwidth,0);
        }
    }
  \end{tikzpicture}
}
\usepackage{anyfontsize}
\usepackage{vicent}
\begin{document}
\fontsize{40}{60}\selectfont 
\cursiveshape
\foreach \i in {a,...,f} {
\i \\
}
\foreach \i in {A,...,F} {
\i \\
}
\end{document}

输出:

在此处输入图片描述

答案1

您可以通过附加 来解决这个问题\vphantom{b}。我仅在没有 vicent 包的情况下进行了测试,而该包恰好不是我的 TeXLive 安装的一部分。

\documentclass[a4paper]{article}
\usepackage{geometry}
\geometry{margin=0.5in}
\setlength{\parindent}{0pt}
\usepackage{background}
\usepackage{tikzpagenodes}
\SetBgScale{1}
\SetBgAngle{0}
\SetBgPosition{current page text area.north west}
\SetBgColor{black}
\SetBgContents{
  \begin{tikzpicture}[remember picture,overlay]
      \coordinate (O) at (0,0;
       \def\offset{60pt}
      \pgfmathsetlengthmacro{\rows}{floor(\textheight/\offset)}
      \pgfmathsetlengthmacro{\dx}{floor(40/3}
      \typeout{\the\textheight,\rows,\dx}
    \foreach \i in {0,1,...,\rows} {
        \foreach \j in {0,...,3} {
            \draw[line width=0.5pt] ([yshift=-\i*\offset-\j*\dx]O) -- ++(\textwidth,0);
        }
    }
  \end{tikzpicture}
}
\usepackage{anyfontsize}
%\usepackage{vicent}
\begin{document}
\fontsize{40}{60}\selectfont 
%\cursiveshape
\foreach \i in {a,...,f} {
\i\vphantom{b} \\
}
\foreach \i in {A,...,F} {
\i\vphantom{b} \\
}
\end{document}

相关内容