我正在尝试使用 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}
输出: