![文本的轮廓和阴影](https://linux22.com/image/359830/%E6%96%87%E6%9C%AC%E7%9A%84%E8%BD%AE%E5%BB%93%E5%92%8C%E9%98%B4%E5%BD%B1.png)
我有这个代码:
\documentclass[]{memoir}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{contour}
\contourlength{.4pt}
\usepackage{shadowtext}
\usepackage{contour}
\begin{document}
\shadowoffsetx{0pt}
\shadowoffsety{-.2pt}
\shadowcolor{red}
\resizebox*{100mm}{!}{\shadowtext{\MakeUppercase{\textbf{the text}}}}
\end{document}
我还需要为文本添加轮廓,但无论我将命令放在哪里,它都不会编译\contour{}
。请注意,我使用的是 xelatex。
帮助?
答案1
\documentclass[]{memoir}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{contour}
\contourlength{.4pt}
\usepackage{shadowtext}
\usepackage{contour}
\begin{document}
\shadowcolor{red}
\shadowoffsetx{0pt}
\shadowoffsety{-.2pt}
\resizebox*{100mm}{!}{\contour{blue}{\shadowtext{\textbf{\uppercase{the test}}}}}
\end{document}
对我来说很管用。虽然它发出了抱怨,但显然仍能呈现您想要的结果(我认为)。
编辑:为了清楚起见,运行
xelatex -interaction=batchmode -halt-on-error <yourfile>
编译。
答案2
我必须这样做\shadowtext{\contour{...
才能让它工作。相反,编辑relax
了 offsety 参数,在执行了多个字体形状迭代shadowtext
之后,让它保持未定义状态。contour
resizebox
由于像素化严重,因此也被删除,因此使用缩放来获得更平滑的线条。
使用这两个包可以实现常规字体效果:
平均能量损失
\documentclass{article}
\usepackage[svgnames]{xcolor}
\usepackage{fontspec}
\setmainfont{Noto Serif}[Scale=3]
\usepackage{contour}
\usepackage{shadowtext}
\begin{document}
\contourlength{1.4pt}
\shadowcolor{blue}
\shadowoffsetx{1.52pt}
\shadowoffsety{1.52pt}
\Huge
\shadowtext{%
\contour[32]{yellow}{%
\textbf{\uppercase{the test}}
}%
}%
\bigskip
\contourlength{0.4pt}
\color{yellow}
\shadowcolor{blue}
\shadowoffsetx{0.52pt}
\shadowoffsety{0.52pt}
\Huge
\shadowtext{%
\contour[24]{red}{%
\textbf{\uppercase{the test}}
}%
}%
\bigskip
\contourlength{0.8pt}
\color{Magenta}
\shadowcolor{blue!40}
\shadowoffsetx{4.52pt}
\shadowoffsety{2.52pt}
\Huge
\shadowtext{%
\contour[24]{red}{%
some text
}%
}%
\end{document}