From: Ryan Williams Date: 2006-09-02T16:56:35+09:00 Subject: Re: mem_inspect and png On 9/1/06, William Crawford wrote: > Eric Hodel wrote: > > png is a pure-ruby PNG writing library written by Ryan Davis. > > > > To install: > > > > $ sudo gem install png > > > > To use: > > > > require 'png' > > > > canvas = PNG::Canvas.new 200, 200 > > > > # Set a point to a color > > canvas[100, 100] = PNG::Color::Black > > > > # draw an anti-aliased line > > canvas.line 50, 50, 100, 50, PNG::Color::Blue > > > > png = PNG.new canvas > > png.save 'blah.png' > > > > -- > > Eric Hodel - drbrain@segment7.net - http://blog.segment7.net > > This implementation is HODEL-HASH-9600 compliant > > > > http://trackmap.robotcoop.com > > Is there a website for it? Maybe an rDoc page? I'd like to know some > things like 'Does it draw dashed/dotted lines?' etc. > > RMagick does, but it has a little glitch where if the last dash on a > line isn't whole, it doesn't draw it. (At least in my playing with it > so far.) I think I can work around it, but if I can find a library that > works better, I'll use that instead. > > If you're wondering why it matters so much, I'm making a very very very > simple little plaid design creator in ruby. The dashed lines are used > to simulate the weaving of the threads. The upper and left edges are > smooth, but the right and bottom edges aren't, because of this bug. I > think I can simply draw over the edge of the canvas and fix it, but I > haven't gotten around to trying yet. Being able to simply draw it > correctly without hacks would be much better. I think that drawing over the edge would be simplest -- you can set the clip so you don't have to fix it later: http://www.imagemagick.org/RMagick/doc/draw.html#clip_path If you're using RVG, there's the same thing: http://www.imagemagick.org/RMagick/doc/rvgclip.html But anyway, cool work with the PNG library! -RYaN > > I could, of course, draw it pixel by pixel, but I think that'd be quite > a bit slower. > > -- > Posted via http://www.ruby-forum.com/. > >