更改 Inkscape 生成的 \input .pdf_tex 文件时的文本大小

更改 Inkscape 生成的 \input .pdf_tex 文件时的文本大小

我正在尝试使用 Inkscape 绘制数学图形。示例代码如下:Inkscape 手册并包含带有 LaTex 覆盖的 PDF 文件(由文件 -> 另存为 PDF 生成,并选择选项省略 PDF 中的文本并生成 LaTex 文件)

\documentclass[12pt]{article}
\usepackage{graphicx}
\usepackage{color}
\begin{document}

\Huge
\def\svgwidth{3.333in}
\input{FileExportText_LaTeX.pdf_tex}

\end{document}

并且它有效。

然而,图片中的数学表达式通常太小或太大。在本文档中如何在 LaTex 中包含 SVG 图像,它说“字体类型和大小无关紧要,不会导出到 LATEX”。因此,我想知道如何更改 Inkscape 生成的每个特定数学表达式的文本大小?

我的目标是画出像 Visual Complex Analysis 中那样的图形 在此处输入图片描述。也许除了 Inkscape 还有其他选择?

答案1

您可以将所需的字体大小添加到文件中的特定数学表达式FileExportText_LaTeX.pdf_tex。例如更改

\put(0.11,0.35603788){\makebox(0,0)[r]{\smash{10}}}%

\put(0.11,0.35603788){\makebox(0,0)[r]{\smash{\large 10}}}%

或者为了获得均匀的外观,对图像中的所有文本使用相同的字体大小。

{
   \fontsize{9pt}{11pt}\selectfont% or whatever fontsize you like
   \def\svgwidth{3.333in}
   \input{FileExportText_LaTeX.pdf_tex}
}

答案2

编辑解决方案是关于从扩展中导出 tikz

relsize带有不需要更改导出文件的包的解决方案:

在你的序言中创建下一个命令:

\newcommand\scaleInNode[1][1]{\tikzset{execute at begin node={\normalsize\larger[#1]}}}

梅威瑟:

\documentclass[12pt,paper=a4]{scrartcl}
\usepackage{amsmath}
\usepackage{tikz}
\usepackage{relsize}
\usepackage{graphicx}

\newcommand\scaleInNode[1][1]{\tikzset{execute at begin node={\normalsize\larger[#1]}}}

\begin{document}
Test text and math before

$f(x)=4\cdot x +1$

\scaleInNode[3]


Test text and math after

\begin{tikzpicture}
  \node at (0,0) {$f(x)=4\cdot x +1$};
  \node at (5,2) {Text};
\end{tikzpicture}

% Go back to scale 1
\scaleInNode


\begin{tikzpicture}
  \node at (0,0) {$f(x)=4\cdot x +1$};
  \node at (5,2) {Text};
\end{tikzpicture}

\end{document}

输出:

在此处输入图片描述

相关内容