TKPAINT 1.3     [ win95/NT/Linux ]
---------------------------------------------------------
Copyright (C) 1998  Samy Zafrany [samy@netanya.ac.il]

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.


OVERVIEW OF TKPAINT
-------------------------
Tkpaint is an easy to use graphics utility based on the canvas widget of
the tool command language Tcl/Tk. It can be very useful for drawing simple
to complex figures, slide presentations, graphs, and diagrams that involve
geometrical shapes, arrows, text, and colors.
This release adds bitmaps and gifs to this list.
With some experience it is possible to get even more complex 3D stuff.
If you understand the Tcl/Tk canvas command well, you can also include
your own scripts (via output files) and do great stuff with it.

Tkpaint was developed on:
1. Pentium/100MH/Win95/Linux     + wish 8.0 (or prowish 8.03)
2. PentiumPro/200MH/NT4/Linux    + wish 8.0 (or prowish 8.03)
And it should run well on such platforms.
(Note that the Linux and MS versions are separate).

With Tkpaint it is possible to draw a variety of two dimensional
geometrical objects:
 1.  Polygons
 2.  Rectangles
 3.  Rounded rectangles
 4.  Circles
 5.  Ellipse
 6.  Splines
 7.  Arcs (of circles)
 8.  Chords (of circle)
 9.  Pie slices (of circle)
10.  Free hand curves.
11.  Text in any size, type, color, and stipple.
12.  Now it is possible to insert images from files. The supported formats
     are bmp, gif, ppm, pgm.

The arc, chord, and pieslice way of drawing is especially
nice, and the author did not see anything like it in other similar prgrams.
We do not know about other programs that support arrows on arcs too!

The canvas environment of Tcl/Tk is based on objects, which means that
every shape, line, text item, or image are treated as an undivisible unit.
All actions are performed on these objects:
you can create, move, copy, raise, lower, and delete
each object as a graphical unit.

However, in this application it is also possible to select a group of objects
and perform various actions on all the objects in the group:

1. Edit their outline width and outline color.
2. Edit interiour color.
3. Stretch the group of objects horizontaly, vertically, or in both directions.
3. Copy, move, and delete of a group of objects.
4. Reflect with respect to the x-axis or y-axis.
5. And even rotate the group to any desired angle.
6. It is possible to UNDO the last 50 operations, and then you can REDO the
   last 50 undo actions.

Reflection of a group of objects with respect to any line-axis is achievd
through horizotal or vertical reflection and then rotation.

You may send output to printer if you have gsview installed, or get the output
in EPS (encapsulated PostScript) file format or as a Tcl script.
Or save as Encapsulated PostScript to be used in TeX/LaTeX files (or any
utility that supports EPS inclusion)

For more information it is best to press the "Help" button or simply play
with the program. It is quite easy to use.

FILES
-----------
If you have download th Tcl source package, then You should find the following
files:

1.   tkpaint.tcl      (main program)
2.   help.tcl         (help file)
3.   fontsel.tcl      (font selection box)
4.   arrowshape.tcl   (arrow head editor)
5.   gifs/*.gif       (GIF files directory, it should contain many gif files)
6.   COPYING          (Gnu general public license)
7.   readme           (this file)
8.   demo1.pic        (example of pic file)
9.   demo2.pic        (example of pic file)
10.  demo3.pic        (example of pic file)
10.  demo4.pic        (example of pic file)
11.  some gif/ppm and bitmap files (for the demos)
12.  changes

The main file is of course tkpaint.tcl.
And it should be fed to wish 8.0 or prowish.

if you have dowloaded the executable package, then you should find there
the following files:

1.  tkpaint.exe
2.  readme
3.  copying
4.  demo files
5.  some gif and bitmap files (for the demos)

Credits
--------
1. Donald K. Fellows (fellows@cs.man.ac.uk) for the wonderful font selection
   box. It was modified a little to support color selection and some more
   text size radio buttons.

2. Brent Welsh for his excellent book "Practical Programming in Tcl/Tk".
   Example 31-12 (Simple edit bindings for canvas text items) saved us
   Lots of trouble. It was, of course, modified to suite tkpaint.

3. My students: Michel Zohar, Yaniv Katan, and Amit Noph whose good ideas,
   good source code, and especially their snagged gifs (;-), contributed a
   lot to this program.

4. Christopher Jay Cox (cjcox@acm.org) for his inspiring ImPress program.
   playing with it on the Netscapes browser was really impressive and
   motivating.  Some of the ideas like line width scale and manipulation of
   group of objects were stollen from ImPress (not the code! just ideas).
-------
This program could not have been written without the so many ideas and tips
that I I got from these sources, hence it is free and open
as these sources are.

New versions of this program are availabe through

            ftp.neosoft.com/pub/tcl/sorted/graphics/tkpaint
            www.neosoft.com/tcl/ftparchive/sorted/graphics/tkpaint
            http://www.netanya.ac.il/~samy

Hisotory
----------
Tkpaint started as an experiment for testing Tcl/Tk capabilities in a
graduate course (on graphical user interfaces) given by me at
Netanya Academic College, Israel, Fall 1997.
I was just introduced to Tcl/Tk by a friend who thought that it would be
a good language to teach in this course (and, frankly, considering the
alternatives, I could not realy avoid it). one of the projects (among others)
that came to my mind was to try to create a drawing tool that beside of making
an interesting project, will also be useful for educational duties like
preparing lecture slides and figures for lecture note, papers, and text books.
I have had a long and bad experience with similar programs (which I will
not mention here) which where either too simple and deficient or too large
and complex to use or install or cost a lot of money.
While many of my students worked on this project, I did work on it privately
myself. At the end of term, during the grading of their projects, I have
integrated many of their ideas and some of their source code to my tkpaint,
and after some hard work came up with this final copy.

To conclude: I think that Tcl/Tk did provide me with almost anything that
I initially wanted for tkpaint to have. The program works very good for me
and I am using it constantly with great results.
There are, as always, many features that can be added, and many other things
can be improved, etc. But one must draw a finish line somewhere.
I will, of course, fix bugs and do some simple fix-ups from time to time,
or even do a major change if it is strongly demnaded by users, but I do not
intend to go ahead and make any major changes to the program (unless I will
suddenly become a milioner and be completely relieved from my teachnig and
other duties).
The only deficiency that irritates me the most is the lack of dash lines
in the canvas widget of Tcl/Tk.
But for the time being I can do some work-arrounds, an I hope that sometime
in the future, the dash-patch will be integrated to Tk.

Send bug reports to:
------------------------------------------------------------------------
Samy Zafrany                 School of Computer Science and Mathematics
samy@netanya.ac.il           Netanya Academic College
Phones:                      16 Kibutz-Galuyot Street
972-9-8607738 (Office)       Kiriat Yizhack Rabin
972-4-8258140 (Home)         Netanya 42365, ISRAEL
------------------------------------------------------------------------

Copyright  1998 Samy Zafrany. All rights reserved.
