我读过的大多数技术书籍都使用所谓的“侧面图标”来标记某些类型的内容。诸如“注意这一点”和“有用的提示”之类的内容,都有相应的图标。
下面是我所指的一个例子(“关键点”和“编码恐怖”图标):
取自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}`