octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 3.6.1 produces eps files that are unusable on Debian wheezy


From: Mike Miller
Subject: Re: 3.6.1 produces eps files that are unusable on Debian wheezy
Date: Sat, 3 Mar 2012 14:41:47 -0500

Hi Dan, thanks for the suggestions.

On Fri, Mar 2, 2012 at 1:13 PM, Daniel J Sebald <address@hidden> wrote:
> On 03/02/2012 07:23 AM, Mike Miller wrote:
>>
>> I've been unable to display or convert eps files produced by print (to
>> gnuplot) with 3.6.1 on my Debian testing (wheezy) system, same result
>> on dev branch.  If I take these files to an older RHEL5 system, files
>> display fine.  This is most likely a problem with something else on my
>> system, but I'm trying to understand the difference so I know where to
>> look next.
>>
>> [cut]
>>
>> Any insight or tips on where to look next?
>
> I just looked up the code for gnuplot.  If the font name consists of only '
> ' or '-' gnuplot will use the current default font name.  So '{}' has no
> meaning as far as gnuplot is concerned other than it is expected to be some
> valid font name to the PostScript interpreter.
>
> Therefore, Octave shouldn't be sending a '{}'.  My guess is that in updating
> the Octave code, perhaps cells of strings are now used and maybe the '{}' is
> coming about because of an empty cell.  Perhaps a conditional test was
> forgotten on an empty cell.  Just a guess.
>
> I'm using a slightly older version of Octave, but the lines that deal with
> font are in __go_draw_axes__.m.
>
> function fontspec = create_fontspec (f, s, gp_term)
>  if (strcmp (f, "*"))
>    fontspec = sprintf ("font \",%d\"", s);
>  else
>    fontspec = sprintf ("font \"%s,%d\"", f, s);
>  endif
> endfunction
>
> As I say, I'm out of date, but I assume that hunk of code is still in the
> latest version somewhere.

Yes, that part is mostly the same on the current default branch.
However, I just found this code in get_fontname_and_size which is
called before create_fontspec.

  if (isempty (t.fontname) || strcmp (t.fontname, "*"))
    fnt = "{}";
  else
    fnt = t.fontname;
  endif

I think this is where the "{}" font name is coming from.

Can someone maybe clarify what the following change was for?

http://hg.savannah.gnu.org/hgweb/octave/rev/beb4f0f27a32

> [cut]
> On your system, please check at the
> Octave command line:
>
> get (0, "defaultaxesfontname")
> get (0, "defaultaxesfontsize")

octave:1> get(0, 'defaultaxesfontname')
ans = *
octave:2> get(0, 'defaultaxesfontsize')
ans =  10

Looks normal to me.

Dan, can you (or any other volunteers?) run the attached script
against the current default or 3.6.1, I see the same behavior on both,
and report back what you get on standard output?  Mine looks like this
(default branch build this morning):

set xtics border in scale  1.4 mirror  font "{},20";
set ytics border in scale  1.4 mirror  font "{},20";
set ztics border in scale  1.4 mirror  font "{},20";
gnuplot 4.4 patchlevel 0

-- 
mike

Attachment: gplotcmp.m
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]