Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit ea47ff4

Browse files
authored
Merge pull request #22359 from anntzer/texfont
Slightly refactor TeX source generation.
2 parents a258d42 + 08ac151 commit ea47ff4

File tree

1 file changed

+15
-11
lines changed

1 file changed

+15
-11
lines changed

lib/matplotlib/texmanager.py

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -206,23 +206,27 @@ def make_tex(self, tex, fontsize):
206206
"""
207207
basefile = self.get_basefile(tex, fontsize)
208208
texfile = '%s.tex' % basefile
209-
fontcmd = {'sans-serif': r'{\sffamily %s}',
210-
'monospace': r'{\ttfamily %s}'}.get(self._font_family,
211-
r'{\rmfamily %s}')
212-
213-
Path(texfile).write_text(
214-
r"""
215-
%s
209+
fontcmd = (r'\sffamily' if self._font_family == 'sans-serif' else
210+
r'\ttfamily' if self._font_family == 'monospace' else
211+
r'\rmfamily')
212+
tex_template = r"""
213+
%(preamble)s
216214
\pagestyle{empty}
217215
\begin{document}
218216
%% The empty hbox ensures that a page is printed even for empty inputs, except
219217
%% when using psfrag which gets confused by it.
220-
\fontsize{%f}{%f}%%
218+
\fontsize{%(fontsize)f}{%(baselineskip)f}%%
221219
\ifdefined\psfrag\else\hbox{}\fi%%
222-
%s
220+
{%(fontcmd)s %(tex)s}
223221
\end{document}
224-
""" % (self._get_preamble(), fontsize, fontsize * 1.25, fontcmd % tex),
225-
encoding='utf-8')
222+
"""
223+
Path(texfile).write_text(tex_template % {
224+
"preamble": self._get_preamble(),
225+
"fontsize": fontsize,
226+
"baselineskip": fontsize * 1.25,
227+
"fontcmd": fontcmd,
228+
"tex": tex,
229+
}, encoding="utf-8")
226230

227231
return texfile
228232

0 commit comments

Comments
 (0)