\documentclass{article}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage[dvipsnames]{xcolor}
\usepackage[most]{tcolorbox}
\usepackage{empheq}
\definecolor{lightgrey}{HTML}{f0f0f0}
\newtcbox{\resultbox}[1][lightgrey]{
nobeforeafter,
math upper,
tcbox raise base,
enhanced,
boxrule=1pt,
colback = #1!30,
drop lifted shadow,
sharp corners
}
\begin{document}
\begin{empheq}[box=\resultbox]{equation*}
a(t) = 2\alpha - \gamma\omega^2 cos(\omega t)
\end{empheq}
\end{document}
结果:
有什么方法可以强制将该框左对齐empheq
?
谢谢。
编辑:很抱歉造成不便,从现在起它已经是需要编译的完整最小代码。
有没有什么办法可以用来fleqn
只影响班级\resultbox
?
答案1
您只需将该选项添加fleqn
到您的文档类别行即可。
完整代码如下:
\documentclass[fleqn]{article}
\usepackage{xcolor}
\usepackage{tcolorbox}
\tcbuselibrary{skins,theorems}
\usepackage{empheq}
\newtcbox{\resultbox}[1][lightgray]{
nobeforeafter,
math upper,
tcbox raise base,
enhanced,
boxrule=1pt,
colback = #1!30,
drop lifted shadow,
sharp corners
}
\begin{document}
\begin{empheq}[box=\resultbox]{equation*}
v(t) = 2\alpha t - \gamma\omega sen(\omega t))
\end{empheq}
\end{document}
下次请提供完整最小工作示例. 特别是,代码应该可以编译。
编辑左侧排版方程式,无需全局设置 fleqn
该fleqn
选项设置一个标志@fleqn
,由埃菲克包来排版左侧的方程式。下面的技巧是在加载包时设置此标志,然后创建一个新环境Empheq
,该环境仅为该环境设置此标志。有了这个,你就可以鱼与熊掌兼得了,可以这么说。
\documentclass{article}
\usepackage{xcolor}
\usepackage{tcolorbox}
\tcbuselibrary{skins,theorems}
\newtcbox{\resultbox}[1][lightgray]{
nobeforeafter,
math upper,
tcbox raise base,
enhanced,
boxrule=1pt,
colback = #1!30,
drop lifted shadow,
sharp corners
}
\makeatletter% hack to allow empheq environment to be used with fleqn in force only locally
\@fleqntrue
\usepackage{empheq}
\newenvironment{Empheq}{\@fleqntrue\empheq[box=\resultbox]{equation*}}{\endempheq}
\@fleqnfalse
\makeatother
\begin{document}
\begin{Empheq}
v(t) = 2\alpha t - \gamma\omega sen(\omega t))
\end{Empheq}
\begin{equation*}
v(t) = 2\alpha t - \gamma\omega sen(\omega t))
\end{equation*}
\end{document}
得出的结果为:
我已将下面的公式正常排版以突出差异。我尚未全面测试过此 hack。它不太可能破坏其他内容,因为这不是fleqn
应有的使用方式。特别是,empheq
文档中的其他环境几乎肯定会被破坏。