我正在用 LaTeX 制作 a0 sciposter
。使用命令在 tex+pdf 文件中添加图形时遇到问题\input
。问题是图形的文本对于我的图形来说太大了。例如,beamer
(或常见的 LaTeX 文档)中的相同图形显示为下图:
但在我的电脑里同样的图像sciposter
如下:
sciposter
(和/LaTeX)的图形插入代码beamer
如下:
\begin{figure}
\centering
\scalebox{0.90}{\input{Images/esqueleto.pdf_tex}}
\caption{Esqueleto virtual de 15 articulaciones de \emph{OpenNI}/\emph{NITE}}
\end{figure}
sciposter
有什么方法可以解决这个问题并生成与原始图像具有相同比例的图形(beamer
以我的例子为例)?
图形 tex 文件是从 Inkscape 导出的下一个代码(也适用于 和sciposter
) :beamer
%% Creator: Inkscape inkscape 0.48.2, www.inkscape.org
%% PDF/EPS/PS + LaTeX output extension by Johan Engelen, 2010
%% Accompanies image file 'esqueleto.pdf' (pdf, eps, ps)
%%
%% To include the image in your LaTeX document, write
%% \input{<filename>.pdf_tex}
%% instead of
%% \includegraphics{<filename>.pdf}
%% To scale the image, write
%% \def\svgwidth{<desired width>}
%% \input{<filename>.pdf_tex}
%% instead of
%% \includegraphics[width=<desired width>]{<filename>.pdf}
%%
%% Images with a different path to the parent latex file can
%% be accessed with the `import' package (which may need to be
%% installed) using
%% \usepackage{import}
%% in the preamble, and then including the image with
%% \import{<path to file>}{<filename>.pdf_tex}
%% Alternatively, one can specify
%% \graphicspath{{<path to file>/}}
%%
%% For more information, please see info/svg-inkscape on CTAN:
%% http://tug.ctan.org/tex-archive/info/svg-inkscape
%%
\begingroup%
\makeatletter%
\providecommand\color[2][]{%
\errmessage{(Inkscape) Color is used for the text in Inkscape, but the package 'color.sty' is not loaded}%
\renewcommand\color[2][]{}%
}%
\providecommand\transparent[1]{%
\errmessage{(Inkscape) Transparency is used (non-zero) for the text in Inkscape, but the package 'transparent.sty' is not loaded}%
\renewcommand\transparent[1]{}%
}%
\providecommand\rotatebox[2]{#2}%
\ifx\svgwidth\undefined%
\setlength{\unitlength}{134.56256226bp}%
\ifx\svgscale\undefined%
\relax%
\else%
\setlength{\unitlength}{\unitlength * \real{\svgscale}}%
\fi%
\else%
\setlength{\unitlength}{\svgwidth}%
\fi%
\global\let\svgwidth\undefined%
\global\let\svgscale\undefined%
\makeatother%
\begin{picture}(1,1.28819087)%
\put(0,0){\includegraphics[width=\unitlength]{Images/esqueleto.pdf}}%
\put(0.63961372,1.17326261){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Cabeza}}}%
\put(0.78648125,0.90165272){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Torso}}}%
\put(0.79518277,0.76070166){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Codo der.}}}%
\put(0.81356486,0.50269197){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Mano der.}}}%
\put(0.77404193,0.33459856){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Rodilla der.}}}%
\put(0.72218005,0.07502538){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Pie der.}}}%
\put(0.82068961,1.0126202){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Hombro der.}}}%
\put(0.7226059,1.09835082){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Cuello}}}%
\put(0.86809471,0.6181998){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Cadera der.}}}%
\put(0.17688348,0.76070166){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Codo izq.}}}%
\put(0.17148466,0.50269197){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Mano izq.}}}%
\put(0.21519443,0.33459856){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Rodilla izq.}}}%
\put(0.27034587,0.07502538){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Pie izq.}}}%
\put(0.15482862,1.0126202){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Hombro izq.}}}%
\put(0.13391934,0.61845517){\color[rgb]{0,0,0}\makebox(0,0)[cb]{\scriptsize{Cadera izq.}}}%
\end{picture}%
\endgroup%
答案1
我建议两点:
- 将您的 Inkscape 文件导出为 PDF 并使用
\includegraphics{images/exportedPDFfile}
。
这样,图形大小与文本大小的比例保持不变。 重新定义
\scriptsize
Inkspace 使用的宏:\def\scriptsize{\fontsize{8}{10}\selectfont} \documentclass{sciposter} \begin{document} \begin{figure} \centering \scalebox{0.90}{\def\scriptsize{\fontsize{8}{10}\selectfont}\input{esqueleto.tex}} \caption{Esqueleto virtual de 15 articulaciones de \emph{OpenNI}/\emph{NITE}} \end{figure} \end{document}
请注意,我将重新定义放在
\scalebox
宏内,以便它保持本地状态。您
可以\fontsize…
使用任何其他已定义的尺寸宏:\let\scriptsize\tiny
另外:\centering
不\scriptsize
接受任何参数。