changeset 20951:793886a00c3b

Font handling improvements for gnuplot (part of bug #44187) * __gnuplot_print__.m (font_spec): Add a comma before the numerical fontsize specification string. Check that the font properties aren't empty before using them as strings.
author Daniel J Sebald <daniel.sebald@ieee.org>
date Sat, 19 Dec 2015 13:59:32 -0500
parents 165ba7463ca9
children 072559bd31f2
files scripts/plot/util/private/__gnuplot_print__.m
diffstat 1 files changed, 9 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/plot/util/private/__gnuplot_print__.m	Sat Dec 19 13:58:12 2015 -0500
+++ b/scripts/plot/util/private/__gnuplot_print__.m	Sat Dec 19 13:59:32 2015 -0500
@@ -237,7 +237,7 @@
         f = sprintf ('fname "%s"', opts.font);
       elseif (! isempty (opts.fontsize))
         fontsize = round (opts.fontsize * 0.75);
-        f = sprintf ("%s fsize %d", f, fontsize);
+        f = sprintf ("fsize %d", fontsize);
       endif
     case "pdf"
       if (! isempty (opts.font) && ! isempty (opts.fontsize))
@@ -245,11 +245,15 @@
       elseif (! isempty (opts.font))
         f = sprintf ('font "%s"', opts.font);
       elseif (! isempty (opts.fontsize))
-        f = sprintf ("fsize %d", f, opts.fontsize);
+        f = sprintf ('font ",%d"', opts.fontsize);
       endif
     case {"pdfcairo", "pngcairo"}
-      if (! isempty (opts.font))
+      if (! isempty (opts.font) && ! isempty (opts.fontsize))
+        f = sprintf ('font "%s,%d"', opts.font, opts.fontsize);
+      elseif (! isempty (opts.font))
         f = sprintf ('font "%s"', opts.font);
+      elseif (! isempty (opts.fontsize))
+        f = sprintf ('font ",%d"', opts.fontsize);
       endif
     case {"epslatex", "epslatexstandalone"}
       if (! isempty (opts.font) && ! isempty (opts.fontsize))
@@ -257,7 +261,7 @@
       elseif (! isempty (opts.font))
         f = sprintf ('font "%s"', opts.font);
       elseif (! isempty (opts.fontsize))
-        f = sprintf ("%d", opts.fontsize);
+        f = sprintf ('font ",%d"', opts.fontsize);
       endif
     case "pslatex"
       if (! isempty (opts.fontsize))
@@ -269,7 +273,7 @@
       elseif (! isempty (opts.font))
         f = sprintf ('font "%s"', opts.font);
       elseif (! isempty (opts.fontsize))
-        f = sprintf ('font "%d"', opts.fontsize);
+        f = sprintf ('font ",%d"', opts.fontsize);
       endif
     case "emf"
       if (! isempty (opts.font) && ! isempty (opts.fontsize))