我有这个代码:
\documentclass[11pt,a4paper,sans]{moderncv}
\usepackage{fontenc}
\usepackage{graphicx}
\usepackage{xcolor}
\usepackage[scale=0.75]{geometry}
\moderncvstyle{casual}
\moderncvcolor{blue}
\name{John}{Doe}
\begin{document}
\makecvtitle
\hbox{
\hspace*{0.2\textwidth}
\textcolor{color1}{\rule{5pt}{\textwidth}}
\hspace*{0.05\textwidth}
\includegraphics[]{/home/toogley/bew/img/passbilder/platzhalter.png}
}
\end{document}
生成结果:
我想将图片移到行的中间。通常,我会尝试使用环境等来解决这个问题figure
。但当我在这里使用它时,我收到了错误
LaTeX Error: Environment figure undefined.
根据相关问题,此错误消息意味着,我无法使用它。或者说,使用图形环境的唯一解决方案是改变 moderncv 的工作方式。
因此,我的问题是是否有一种不改变 moderncv 工作方式的方法。
答案1
不要使用\hbox
;如果你这样做,你会感到惊讶。
只需将规则和图片向下移动即可。不要忘记保护行尾。
\documentclass[11pt,a4paper,sans]{moderncv}
\usepackage{graphicx}
\usepackage{xcolor}
\usepackage[scale=0.75]{geometry}
\moderncvstyle{casual}
\moderncvcolor{blue}
\name{John}{Doe}
\begin{document}
\makecvtitle
\noindent
\hspace{0.2\textwidth}%
\textcolor{color1}{\rule[-.5\textwidth]{5pt}{\textwidth}}%
\hspace{0.05\textwidth}%
\raisebox{-.5\height}{\includegraphics[width=2cm]{example-image-9x16}}
\end{document}
答案2
这是一个可能适合您的解决方案TikZ
:
\documentclass[11pt,a4paper,sans]{moderncv}
\usepackage{fontenc}
\usepackage{graphicx}
\usepackage{xcolor}
\usepackage[scale=0.75]{geometry}
\moderncvstyle{casual}
\moderncvcolor{blue}
\name{John}{Doe}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\makecvtitle
\begin{tikzpicture}[remember picture,overlay]
\draw[color1,line width=5pt]
($(current page.north west)+(0.2\columnwidth,-2in)$)
coordinate (TOP)
-- ++ (0,-\textwidth)
coordinate (BOT);
\node[anchor=west] at ($(TOP)!0.50!(BOT)$) {\includegraphics[width=1in]{no_you_cant}};
\end{tikzpicture}
\end{document}
!0.50!
通过玩弄
\node[anchor=west] at ($(TOP)!0.25!(BOT)$) {\includegraphics[width=1in]{no_you_cant}};
您可以将图像重新定位到页面上所需的位置。
答案3
这里有一个建议,将\raisebox
图片向上移动。
\documentclass[11pt,a4paper,sans]{moderncv}
\usepackage{fontenc}
\usepackage[scale=0.75]{geometry}
\moderncvstyle{casual}
\moderncvcolor{blue}
\name{John}{Doe}
\begin{document}
\makecvtitle
\hbox{%
\hspace*{0.2\textwidth}%
\textcolor{color1}{\rule{5pt}{\textwidth}}%
\hspace*{0.05\textwidth}%
\raisebox{\dimexpr.5\textwidth-.5\height\relax}{%
\includegraphics[width=1in]{example-image-golden-upright}}%
}
\end{document}