我目前正在写我的学士论文,忘记包含\usepackage[T1]{fontenc}
。但我正在使用\usepackage[utf8]{inputenc}
和\usepackage{microtype}
。当我包含时,\usepackage[T1]{fontenc}
我需要选择一种可缩放的字体,所以我选择了\usepackage{lmodern}
。现在我遇到了一些新问题。帽子$\widehat{K}$
太大了。我用一个新命令解决了这个问题:
\usepackage{accents}
\DeclareMathSymbol{\widehatsym}{\mathord}{largesymbols}{"62}
\newcommand\lowerwidehatsym{%
\text{\smash{\raisebox{-1.2ex}{%
$\widehatsym$}}}}
\newcommand\fixwidehat[1]{%
\mathchoice
{\accentset{\displaystyle\lowerwidehatsym}{#1}}
{\accentset{\textstyle\lowerwidehatsym}{#1}}
{\accentset{\scriptstyle\lowerwidehatsym}{#1}}
{\accentset{\scriptscriptstyle\lowerwidehatsym}{#1}}
}
现在我有以下疑问/问题:
- 我用了
$\fixwidehat{}$
但是$\overline{\fixwidehat{K}}$
帽子越界了。 - 我的绝对值命令在使用
\newcommand{\abs}[1]{\left\vert#1\right\vert}
时不会缩放尺寸。$\fixwidehat{}$
- 但
$\abs{e^{i*t*\omega}}$
与普通计算机现代字体相比,其尺寸不太合适。它太高了。
我对之前的结果非常满意\usepackage{lmodern}
,只是想调整一下,让它看起来与旧版本相似。你能帮帮我吗?我必须在一周多一点的时间内打印论文,目前我对 LaTeX 真的很失望。
编辑:这是一个最小的工作示例:
\documentclass[
11pt,
a4paper,
twoside = false,
headings=standardclasses,
toc=chapterentrywithdots,
toc=bibliography]{scrbook}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{lmodern}
\usepackage{amsmath}
\usepackage{amsthm, thmtools}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{accents}
\DeclareMathSymbol{\widehatsym}{\mathord}{largesymbols}{"62}
\newcommand\lowerwidehatsym{%
\text{\smash{\raisebox{-1.2ex}{%
$\widehatsym$}}}}
\newcommand\fixwidehat[1]{%
\mathchoice
{\accentset{\displaystyle\lowerwidehatsym}{#1}}
{\accentset{\textstyle\lowerwidehatsym}{#1}}
{\accentset{\scriptstyle\lowerwidehatsym}{#1}}
{\accentset{\scriptscriptstyle\lowerwidehatsym}{#1}}
}
\newcommand{\norm}[1]{\left\lVert#1\right\rVert}
\newcommand{\abs}[1]{\left\vert#1\right\vert}
\usepackage[pdftex]{graphicx}
\usepackage{tikz}
\usepackage[final,babel,tracking=true,kerning=true,spacing=true]{microtype}
\begin{document}
\begin{align*}
\overline{\fixwidehat{K}} \\
\abs{\fixwidehat{K}} \\
\norm{\fixwidehat{K}} \\
\abs{e^{it\omega}}
\end{align*}
\end{document}
答案1
您已经被以下问题所困扰使用 lmodern 处理非常小的字体时出现的问题并且解决方案也类似。
\documentclass[
11pt,
a4paper,
twoside = false,
headings=standardclasses,
toc=chapterentrywithdots,
toc=bibliography,
]{scrbook}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{lmodern}
\usepackage{amsmath}
\usepackage{amsthm, thmtools}
\usepackage{amsfonts}
\usepackage{amssymb}
\newcommand{\norm}[1]{\left\lVert#1\right\rVert}
\newcommand{\abs}[1]{\left\vert#1\right\vert}
\usepackage{graphicx}
\usepackage{tikz}
\usepackage[final,babel,tracking=true,kerning=true,spacing=true]{microtype}
\DeclareFontShape{OMX}{cmex}{m}{n}{
<-7.5> cmex7
<7.5-8.5> cmex8
<8.5-9.5> cmex9
<9.5-> cmex10
}{}
\SetSymbolFont{largesymbols}{normal}{OMX}{cmex}{m}{n}
\SetSymbolFont{largesymbols}{bold} {OMX}{cmex}{m}{n}
\begin{document}
\begin{gather*}
\overline{\widehat{K}} \\
\abs{\widehat{K}} \\
\norm{\widehat{K}} \\
\abs{e^{it\omega}} \\
X_{\widehat{x}_{\widehat{x}}}
\end{gather*}
\end{document}
为了进行比较,输出没有经过修复。
我认为你不应该使用自动\left
和:第二行和第三行说明\right
了\abs
原因\norm
。查看文档以mathtools
了解更好的方法。例如,加载mathtools
和发出
\DeclarePairedDelimiter{\norm}{\lVert}{\rVert}
\DeclarePairedDelimiter{\abs}{\lvert}{\rvert}
你可以看看输出
\[
\norm{\widehat{K}}+\norm[\big]{\widehat{K}}
+\norm[\Big]{\widehat{K}}+\norm*{\widehat{K}}
\]
如您所见,第一个非常正确,也许您可能更喜欢第二个,但是第三个和第四个(与您的定义完全对应)的围栏肯定太大了。
最后说明:我也删除了“自己动手”pdftex
选项graphicx
。这与问题无关,但这是更好的政策。