我有一张这样的照片:
我想像这样旋转这张图片(与文本一起旋转以及单独旋转):
有办法实现这个吗?
答案1
此外,TikZ/PGF 提供了一些略显麻烦的转换可能性,避免了路径.eps
。我使用了logo.png
文件。
\documentclass[10pt]{article}
\usepackage{tikz}
\pgfdeclareimage[height=2cm]{thelogo}{logo}
\newcommand{\somelogomacro}{
\tikz[baseline=(current bounding box.base)]{
\pgftext[at=\pgfpointorigin,y=-0.4cm]{
\pgflowlevel{\pgftransformcm{1}{0.7}{0}{1}{\pgfpoint{0}{0}}}
\pgfuseimage{thelogo}
}
}
}
\author{Ricky Fineman}
\title{\somelogomacro \hspace{-2mm}\LARGE Physics Related Title}
\begin{document}
\maketitle
\section{Unnecessary Show off}
Some literally skewed images.
\begin{figure}[!h]%
\begin{tikzpicture}
\pgftext[at=\pgfpointorigin]{
\pgflowlevel{\pgftransformcm{1}{0.7}{0}{1}{\pgfpoint{0}{0}}}
\pgfuseimage{thelogo}
}
\pgftext[at=\pgfpoint{3cm}{0}]{
\pgflowlevel{\pgftransformcm{1}{0.3}{0}{0.6}{\pgfpoint{0}{0}}}
\pgfuseimage{thelogo}
}
\pgftext[at=\pgfpoint{7cm}{0}]{
\pgflowlevel{\pgftransformcm{-1}{0.5}{-0.1}{-0.66}{\pgfpoint{0}{0}}}
\pgfuseimage{thelogo}
}
\end{tikzpicture}
\caption{Aye Aye Caption!!}%
\label{fig:logo}%
\end{figure}
\end{document}
变换实际上是矩阵向量积。有关更多详细信息,您可能需要查看手册。实际上有一个小错误;变换矩阵实际上是手册中给出的矩阵的转置版本。如果您不想为此烦恼,只需使用上面的示例变换即可。我已将图像放入名为的宏中,\somelogomacro
该宏可用于标题或其他地方。但对于标题,需要进行一些小调整。请注意由于变换而导致的边界框泄漏。可以修复它,但目前我想不出快速修复方法。像往常一样,如果您碰巧知道,请随时提供解决方案。
编辑我对边界框进行了一些修改,但没有实现自动化,这一点在设置转换后显而易见,即声明倾斜量并将其应用于边界框移位\pgfpointadd
。
\documentclass[10pt]{article}
\usepackage{tikz}
\usetikzlibrary{plotmarks}
\pgfdeclareimage[interpolate=true,height=2cm]{thelogo}{logo}
\newcommand{\somelogomacro}{
\tikz[baseline=(current bounding box.center)]{
\pgftext[base]{\pgflowlevel{\pgftransformcm{1}{0.707}{0}{1}{\pgfpoint{0}{0}}}\pgfuseimage{thelogo}}
\pgfpathrectanglecorners{
\pgfpointadd{\pgfpointanchor{current bounding box}{south west}}{\pgfpoint{0}{0.707cm}}
}{
\pgfpointadd{\pgfpointanchor{current bounding box}{north east}}{\pgfpoint{0}{0.707cm}}
}
\pgfusepath{use as bounding box}
}
}
\author{Ricky Fineman}
\title{\somelogomacro \LARGE Physics Related Title}
\begin{document}
\maketitle
\section{Unnecessary Show off}
Some literally skewed images.
\begin{figure}[!h]%
\centering
\somelogomacro
\caption{Aye Aye Caption!!}%
\label{fig:logo}%
\end{figure}
\end{document}
答案2
要做到这一点,您可以使用pst-3d
包。以下是一个例子:
\documentclass{article}
\usepackage{graphicx}
\usepackage{pstricks}
\usepackage{pst-3d}
\begin{document}
\begin{pspicture}(0,0)(3,3)
\psset{viewpoint=1 0.001 0.5}
\ThreeDput[normal= 1 3 0](0,1,1){\includegraphics[scale=0.5]{image.eps}}
\end{pspicture}
\end{document}
结果是
只要记住以下几件事:
- 图片应为 .eps
- 视点参数不能设置为 0(这就是我使用较小数字的原因)
更多信息可以在 pstricks 手册(第十章:三维图形)中找到
供您参考,我使用convert
命令行实用程序将您的图像从 .png
格式转换为.eps
格式。可以使用其他工具。Inkscape 能够转换为格式.eps
。
评论:正如 Percusse 所示,有一个 Tikz 答案可以与 pdflatex 一起使用。不幸的是,目前它并不完美(当然可能会改变)。继续使用 pdflatex 的一种可能方法是使用带有 documentclass 的 pstricks 转换(倾斜图像)standalone
。这将为您提供转换(倾斜)图像的 pdf 版本,您可以在 tikz 和 pdflatex 中使用它。当然,这并不理想,因为它涉及许多小步骤和操作。