抱歉,这个问题没有可行的例子。
我正在将许多图形从 Inscape 导出到“pdf + latex”。所有超过 2 行的文本都显示在一行中。这是代码(但您没有图片)
\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}{595.27558594bp}%
\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.4142857)%
\put(0,0){\includegraphics[width=\unitlength]{pictures/Zeichnung.pdf}}%
\put(0.28127876,0.21643443){\color[rgb]{0,0,0}\rotatebox{90}{\makebox(0,0)[lb]{\smash{1500 mm}}}}%
\put(0.19520245,0.40944517){\color[rgb]{0,0,0}\makebox(0,0)[lb]{\smash{500 mm}}}%
\put(0.6703142,0.10964459){\color[rgb]{0,0,0}\makebox(0,0)[lb]{\smash[b]{Ambient temperature 5 h = 2000 mm}}}%
\put(0.78432201,0.39812598){\color[rgb]{0,0,0}\makebox(0,0)[lb]{\smash{Ambient temperature 3 h = 100 mm}}}%
\end{picture}%
\endgroup%
并且我想要两行文本“Ambient 5 \newline h = 2000 mm”?
答案1
在 Inkscape 中,您需要使用文本工具绘制一个矩形来创建文本框并在该框中书写,而不是单击某处并开始书写。然后,这将在 pdf_tex 中创建一个小页面,如果您通过键入在 Inkscape 中设置换行符\\
,这将出现在 pdf 输出中。
答案2
在 Inkscape 中,只需写入:
\shortstack{Ambient 5 \\ h = 2000 mm}
这应该会将文本以两行形式输出到 LaTeX 中。