fzk3250831516 2025-01-20 00:21 采纳率: 0%
浏览 20

LaTeX在align环境中对齐多个split环境的问题

在VS Code中使用LaTeX,我试图在align环境下对齐多个split环境,代码如下:

\begin{align}
        &\begin{split}
            f_+ \left( \mathrm{pH} \right)
            &= \frac{\left[ + \right]}{
            \left[ + \right] + \left[ 0 \right] + \left[ - \right]
            + \left[ 2- \right]
            }\\
            &= \left(
            1 + \frac{\left[ 0 \right]}{\left[ + \right]}
            + \frac{\left[ - \right]}{\left[ + \right]}
            + \frac{\left[ 2- \right]}{\left[ + \right]}
            \right)^{-1}\\
            &= \left(
            1 + 10^{\mathrm{pH}-\mathrm{p}K_1}
            + 10^{
                2\mathrm{pH}-\mathrm{p}K_{\mathrm{R}}-\mathrm{p}K_1
            }
            + 10^{
                3\mathrm{pH}-\mathrm{p}K_2-\mathrm{p}K_{\mathrm{R}}
                - \mathrm{p}K_1
            }
            \right)^{-1},
        \end{split}\\
        &\begin{split}
            f_0 \left( \mathrm{pH} \right)
            &= \frac{\left[ 0 \right]}{
                \left[ + \right] + \left[ 0 \right]
                + \left[ - \right] + \left[ 2- \right]
            }\\
            &= \left(
                1 + 10^{\mathrm{p}K_1-\mathrm{pH}}
                + 10^{\mathrm{pH}-\mathrm{p}K_{\mathrm{R}}}
                + 10^{
                    2\mathrm{pH}-\mathrm{p}K_2-\mathrm{p}K_\mathrm{R}
                }
            \right)^{-1},
        \end{split}\\
        &\begin{split}
            f_- \left( \mathrm{pH} \right)
            &= \frac{\left[ - \right]}{
                \left[ + \right] + \left[ 0 \right]
                + \left[ - \right] + \left[ 2- \right]
            }\\
            &= \left(
                1 + 10^{
                    \mathrm{p}K_\mathrm{R}+\mathrm{p}K_1-2\mathrm{pH}
                }
                + 10^{\mathrm{p}K_\mathrm{R}-\mathrm{pH}}
                + 10^{\mathrm{pH}-\mathrm{p}K_2}
            \right)^{-1},
        \end{split}\\
        &\begin{split}
            f_{2-} \left( \mathrm{pH} \right)
            &= \frac{\left[ 2- \right]}{
                \left[ + \right] + \left[ 0 \right]
                + \left[ - \right] + \left[ 2- \right]
            }\\
            &= \left(
                1 + 10^{
                    \mathrm{p}K_2+\mathrm{p}K_{\mathrm{R}}
                    +\mathrm{p}K_1-3\mathrm{pH}
                }
                + 10^{
                    \mathrm{p}K_\mathrm{R}+\mathrm{p}K_2-2\mathrm{pH}
                }
                + 10^{\mathrm{p}K_2-\mathrm{pH}}
            \right)^{-1}.
        \end{split}
    \end{align}

呈现的效果理应是各个split生成的式子最左端对齐,这一点在在线的LaTeX编辑器(https://www.latexlive.com/home)以及VS Code代码区的鼠标悬停预览上都能实现,但在输出的PDF文件中这些式子却是右对齐的。请问这种状况是什么缘故导致的,应该怎么处理?多谢指教!

img


(在线LaTeX编辑器生成的效果)

img


(鼠标悬停在VS Code代码区的预览效果)

img


(输出PDF文件的效果)

  • 写回答

2条回答 默认 最新

  • 关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    LaTeX中的align环境默认会将内容左对齐,并且允许你在公式之间添加垂直空间。对于您的问题,我认为可能的原因和解决方案如下:

    原因:您的代码中存在格式错误。您的每个split环境中都缺少了一些必要的结构,比如括号和方程之间的连接符号。这些错误可能导致LaTeX解释器在处理时产生混淆,导致生成的PDF文件不正确对齐。另外,也请确保您的LaTeX编译器是最新的版本,有时候旧版本的编译器可能会出现解析错误的情况。

    解决方案:首先,确保您的每个split环境都正确地嵌套在align环境中,并且每个方程都有正确的数学符号(如等号)进行连接。另外,检查您的代码中的括号是否匹配,以及是否有任何遗漏的符号或字符。另外尝试在split环境内部也使用合适的对齐符号如&来控制各个表达式的对齐方式。这是一个修正后的代码示例:

    \begin{align}
        &\begin{split}
            f_+ \left( \mathrm{pH} \right) &= \frac{\left[ + \right]}{\left[ + \right] + \left[ 0 \right] + \left[ - \right] + \left[ 2- \right]} \\
            &= \left( 1 + \frac{\left[ 0 \right]}{\left[ + \right]} + \frac{\left[ - \right]}{\left[ + \right]} + \frac{\left[ 2- \right]}{\left[ + \right]} \right)^{-1} \\
            &= \left( 1 + 10^{\mathrm{pH}-\mathrm{p}K_1} + 10^{2\mathrm{pH}-\mathrm{p}K_{\mathrm{R}}-\mathrm{p}K_1} + 10^{3\mathrm{pH}-\mathrm{p}K_2-\mathrm{p}K_{\mathrm{R}}-\mathrm{p}K_1} \right)^{-1}.
        \end{split}\\
        &\begin{split}
            f_0 \left( \mathrm{pH} \right) &= \frac{\left[ 0 \right]}{\left[ + \right] + \left[ 0 \right] + \left[ - \right] + \left[ 2- \right]} \\
            &= \left( 1 + 10^{\mathrm{p}K_1-\mathrm{pH}} + 10^{\mathrm{pH}-\mathrm{p}K_{\mathrm{R}}} + 10^{2\mathrm{pH}-\mathrm{p}K_2-\mathrm{p}K_\mathrm{R}} \right)^{-1}.
        \end{split}\\
        &\text{以此类推...}
    \end{align}
    

    此外,请确保您的编辑器或编译器支持LaTeX,并且没有任何设置问题导致渲染不正确。如果您使用的是VS Code,请确保您安装了适当的LaTeX插件(如LaTeX Workshop),并且配置了正确的编译命令和工具链。如果问题仍然存在,请尝试在不同的LaTeX编辑器或在线编译器上测试您的代码,以排除特定编辑器的问题。希望这些建议能帮助您解决问题!如果还有其他问题,请随时提问。

    评论

报告相同问题?

问题事件

  • 创建了问题 1月20日