Path: csiph.com!x330-a1.tempe.blueboxinc.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!weretis.net!feeder4.news.weretis.net!eternal-september.org!feeder.eternal-september.org!.POSTED!not-for-mail From: sfeam Newsgroups: comp.graphics.apps.gnuplot Subject: Re: Postscript fill pattern broken? Followup-To: comp.graphics.apps.gnuplot Date: Sun, 17 Jul 2011 09:32 -0700 Organization: gnuplot development team Lines: 56 Message-ID: References: <98g4n1F3o9U1@mid.individual.net> Reply-To: sfeam@users.sourceforge.net Mime-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 7Bit Injection-Date: Sun, 17 Jul 2011 16:32:08 +0000 (UTC) Injection-Info: mx04.eternal-september.org; posting-host="WEZLCPHRH3QJlZRyUKB04A"; logging-data="16766"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/F3/bxXo0LKoADGUgQx6Hu" User-Agent: KNode/4.4.9 Cancel-Lock: sha1:+0ClTjLeUe7n44qSGUD3IkAD4eE= Xref: x330-a1.tempe.blueboxinc.net comp.graphics.apps.gnuplot:442 Ingo Thies wrote: > Hi, > > I have noticed some strange behaviour with fill patterns in > Postscript. I don't know since when it is present, but at least > gnuplot 4.4 or later (CVS version from July) seems to be affected. > > When I try to use pattern fill in Postscript the pattern for > fillecurves appears to be extremely pixeled, rather than smooth as in > the style test page. Your test script produces an acceptable plot when run here. I suspect you have hit the well known long-standing bug in ghostscript that fails to correctly render pattern fill if antialiasing is enabled. Try turning off antialiasing in your viewer, or try sending the file to a real postscript printer rather than rendering it in ghostscript. Ethan > I am wondering how the patterns on the test page (i.e. with the > command "test") are actually created. But obviously not using the > actual commands for pattern-filled rectangles. > > Here is an example script (note that the current gnuplot syntax only > works with data-based curves rather than functions for fill between > two curves; for this reason 'set table' is used. If there is an easier > way, please describe this in the manual, if not already done so): > > reset > set term push > set term postscript eps size 15cm,10cm "Helvetica" 20 > set output 'testfill.eps' > set samples 100 > set xrange [-2.*pi:+2.*pi] > set yrange [-1.1:2.4] > set table 'tmp.asc' > plot sin(x)+0.5 > unset table > set style fill pattern 4 > plot 'tmp.asc' u 1:($2-0.5):($2+0.5) w filledcu > unset output > set term pop > > I would have expected that "fill pattern" would draw lines, but > actually a pixeled pattern is used (use the magnifying function in > ghostview). But please note that the sample pattern in the key looks > OK, only the plotted pattern looks chunky. > > Is there a workaround, or is this an old and not yet resolved bug? > > Best whishes, > > Ingo