jef@well.sf.ca.us (Jef Poskanzer) (06/16/91)
Archive-name: x11/graphics/xpaint/1991-06-14 Archive: ftp.ee.lbl.gov:xpaint.tar.Z [128.3.254.68] Original-posting-by: jef@well.sf.ca.us (Jef Poskanzer) Original-subject: Re: A decent bitmap editor for X ?? Reposted-by: emv@msen.com (Edward Vielmetti, MSEN) Brian Totty: } You might want to try the PixEditT program which is part of the } Free Widgets release available on a.cs.uiuc.edu (128.174.252.1) } in pub/fwf.shar.Z. I could make another list of flaws, but since it's obviously another preliminary version I'll refrain. Besides, it's actually not too bad. The only major problem is it's once again slow as molasses. Do you folks all have SPARC 2's? I'm stuck with a poor old Sun 3/50, and I don't like waiting a minute for each repaint. } Another advantage to using the Free Widgets pixel editor program } is that the program is built around a pixel editing widget. This } makes the program very modular. The goal was to isolate a "common } denominator" of functionality used in most image editing applications } (bitmap editors, paint programs, font editors, etc.) and encapsulate } this in one reusable module. Actually, it's fairly easy to convert any standalone program into a widget. Just stick all the static variables into a struct and write a wrapper routine. And another approach, for something as big as an image editor, is to leave it standalone and have the calling program use temp files and system(). Of course, this approach doesn't work on the microtoys, which I suspect is where most of the impetus for humongous all-in-one programs is coming from. Rich Thomson: }You should probably wait for R5 to hit the streets because they }rewrote bitmap as a toolkit client. Bob Scheifler: }"They" is Davor Matic, an MIT undergrad. }The one Jef was flaming about is an earlier snapshot of the same program. :-) Does the current version paint faster? For an example of a simple bitmap editor with what I consider to be minimally acceptable performance, see ftp.ee.lbl.gov:xpaint.tar.Z. It gets its speed mainly by storing the image in three different places: in the client, in a Pixmap, and on the screen at the current zoom factor. All operations must update all three copies. For most operations it's possible to update the two server-side copies with judicious CopyAreas and FillRectangles. It's still slower than MacPaint running on a an original 68000 Mac, but this is probably about as fast as you can get under X without something like XIE. Xpaint is based on a minimal X toolkit called libwin, which is included in the tarfile. Both xpaint and libwin are "preliminary versions", with no real documentation and a few missing features. --- Jef Jef Poskanzer jef@well.sf.ca.us {apple, ucbvax, hplabs}!well!jef If you've got the whipped cream, I've got the banana. -- comp.archives file verification ftp.ee.lbl.gov -rwxr-xr-x jef 52406 Jun 15 12:39 xpaint.tar.Z found xpaint ok ftp.ee.lbl.gov:xpaint.tar.Z