如何在 LaTeX 书中添加侧面图标?

如何在 LaTeX 书中添加侧面图标?

我读过的大多数技术书籍都使用所谓的“侧面图标”来标记某些类型的内容。诸如“注意这一点”和“有用的提示”之类的内容,都有相应的图标。

下面是我所指的一个例子(“关键点”和“编码恐怖”图标):

在此处输入图片描述

取自http://www.codinghorror.com/blog/2007/12/on-the-meaning-of-coding-horror.html

我该如何在 LaTeX 中做到这一点(使用\documentclass{book})?明确地说,我希望能够将图标(带标题)附加到文本中,以便图标外部文本的正常流动。


我试过\marginpar(反向),它总是将图像的一部分推出纸张。例如,以下代码:

\reversemarginpar
\chapter{Getting started}
\pagestyle{headings}
AABBB
\marginpar{\includegraphics[scale=0.3]{images/example}}

CCC

给出:

在此处输入图片描述

我得到了类似的结果\marginnote

使用http://upload.wikimedia.org/wikipedia/en/a/a9/Example.jpg

答案1

尝试右对齐段落:

\marginpar{\hfill\includegraphics[scale=0.3]{images/example}}

在偶数页上,需要一个左对齐的段落:

\marginpar{\includegraphics[scale=0.3]{images/example}\hfill}

通过使用奇数/偶数页的可选参数可以简化此过程。将所有这些魔法封装在宏中非常方便。

您可能还需要将图像的大小调整为边距的宽度:

\marginpar{\hfill\includegraphics[width=\marginparwidth]{images/example}}

或使用分数:

\marginpar{\hfill\includegraphics[width=0.95\marginparwidth]{images/example}}

答案2

您还可以尝试使用“覆盖模式”的 TikZ。可能不够优雅,但确实有效 ;-)

\documentclass[12pt]{article} 
\usepackage[english]{babel}
\usepackage{blindtext}

\usepackage{tikz}
\usetikzlibrary{shapes}

\newcommand{\keyPointR}{
\begin{tikzpicture}[overlay]
  \node[draw, rectangle] at (13,0) {KeyPoint R};
\end{tikzpicture}
}

\newcommand{\keyPointL}{
\begin{tikzpicture}[overlay]
  \node[draw, rectangle] at (-8.5,0) {KeyPoint L};
\end{tikzpicture}
}

\begin{document}
\blindtext
\keyPointR

\blindtext[2]
\keyPointL

\blindtext
\end{document}`

相关内容