图像处理、缩放、旋转、平移和视口

图像处理、缩放、旋转、平移和视口

我正在努力理解如何正确操作图形。我的图形目前有一个旋转的视口,我需要一个旋转的图像和一个正常的矩形视口。

有没有办法在不改变视口的情况下调整图像的平移、缩放和旋转?或者调整生成的图形的大小?

为了描述一个可以完成我需要的命令,

\addgraphics[width=\linewidth, aspectratio=1.67, zoom=1 ,panx=0.0, pany=0.0, rotation=30]{path/to/file}

其中唯一采用单位的参数是width,并且rotation始终位于视口的中心附近。Panx并且pany将是相对的,从 0 到 1,并且aspectratio将是原始图像(预旋转)的数字或默认值。Zoom将从 0 到无穷大。

举个例子:

蓝色框表示我想要的视口,蓝色框外的所有内容都会被裁剪掉,并且图形需要正确对齐,如紫色箭头和红线所示。

旋转

\documentclass{article}
\usepackage{graphicx}
\begin{document}

\begin{figure}[!h]
    \centering
    \includegraphics[width=0.475\linewidth]{example-image-a}~%blank space character
    \includegraphics*[width=0.475\linewidth, angle=30]{example-image-a}%
\end{figure} 

\end{document}

答案1

如果我理解正确的话,那么您正在寻找类似这样的东西:

在此处输入图片描述

那么下面的代码可以作为起点:

\documentclass{article}
\usepackage[export]{adjustbox}  % it also load graphicx
\usepackage{tikz}

\begin{document}
\begin{figure}[ht]
    \centering
    \setkeys{Gin}{width=0.475\linewidth,height=44mm}
    \includegraphics{example-image-a}~%blank space character
%
    \begin{tikzpicture}[
path image/.style={path picture={
                   \node at (path picture bounding box.center) {
                            \includegraphics[rotate=30]{#1}};}
                   }]
\path [path image=example-image-b] (0,0) rectangle (0.476\linewidth, 44mm);
\end{tikzpicture}
\end{figure}
\end{document}

附录: 如果您想缩放第二张图像,请查看以下示例是否适合您:

\documentclass{article}
\usepackage[export]{adjustbox}  % it also load graphicx
\usepackage{tikz}

\begin{document}
\begin{figure}[ht]
    \centering
    \includegraphics[width=0.475\linewidth,height=44mm]{example-image-a}~%blank space character
%
    \begin{tikzpicture}[
path image/.style={path picture={
                   \node at (path picture bounding box.center) {
                            \includegraphics[scale=2, rotate=30]{#1}};}
                   }]
\path [path image=example-image-b] (0,0) rectangle (0.475\linewidth, 44mm);
\end{tikzpicture}
\end{figure}
\end{document}

在此处输入图片描述

相关内容