如何将横向图形的宽度设置为文本宽度?

如何将横向图形的宽度设置为文本宽度?

我想要一个横向格式的图形来填满整个页面,即我希望宽度分别为纵向页面的文本高度或横向页面的文本宽度。

下面是我的代码示例:

\documentclass[a5paper, 11pt]{scrbook}

\usepackage{graphicx}
\usepackage{color}
\usepackage{pdflscape}    

\begin{document}    
\begin{landscape}
 \begin{figure}
 \centering
 \def\svgwidth{\textwidth}
 \input{figure.pdf_tex}
 \caption{Example Figure}
 \end{figure}
\end{landscape}    
\end{document}

当通过 pdfLaTeX 运行它时,我得到一个与纵向页面的文本宽度一样宽的横向图形。

使用

\def\svgwidth{\textheight}

不会改变输出。

我怎样才能让图形填满整个页面?


由于不允许上传这种格式,因此我无法包含figure.pdf,但您可以在下方找到figure.png。

以下是figure.pdf_tex的代码内容:

\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}{782.075bp}%
 \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,0.48489595)%
  \put(0,0){\includegraphics[width=\unitlength]{figure.pdf}}%
  \put(0.21413974,0.24055332){\color[rgb]{0,0,0}\makebox(0,0)
[lb]{\smash{Text}}}%
\end{picture}%
\endgroup%

数字

答案1

试试看\linewidth。对我来说很有效\resizebox

相关内容