SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Related Sites

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files

########################## PNGwriter ######################################### #

#       Website: Main:             http://pngwriter.sourceforge.net/
#                Sourceforge.net:  http://sourceforge.net/projects/pngwriter/
#                Freshmeat.net:    http://freshmeat.net/projects/pngwriter/
#
#       Author:                    Paul Blackburn
#
#       Email:                     individual61@users.sourceforge.net
#
#       Version:                   0.5.3   (24 / I / 2005)
#
#       Description:               Library that allows plotting a 48 bit
#                                  PNG image pixel by pixel, which can
#                                  then be opened with a graphics program.
#
#       License:                   GNU General Public License
#                                  (C) 2002, 2003, 2004, 2005 Paul Blackburn

##########################################################################

PNGwriter
Copyright 2002, 2003, 2004 Paul Blackburn

#######################################################################

IMPORTANT - IMPORTANTE The Spanish README and documentation can be found in doc/espaniol El archivo LEAME y la documentacion en castellano esta en doc/espaniol #######################################################################

####################################################################### 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; either version 2 of the License, or (at your option) any later version.

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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA #######################################################################

CONTACTS

Author's Email:                      individual61@users.sourceforge.net
Home page:                           http://pngwriter.sourceforge.net/
Sourceforge.net project page:        http://sourceforge.net/projects/pngwriter/
Freshmeat.net project page:          http://freshmeat.net/projects/pngwriter/

INTRODUCTION
Hi. Thanks for downloading PNGwriter. I hope you find it useful. See doc/english/CHANGES to see what's new.

DESCRIPTION
PNGwriter is a very easy to use open source graphics library that uses PNG as its output format. The interface has been designed to be as simple and intuitive as possible. It supports plotting and reading in the RGB (red, green, blue), HSV (hue, saturation, value/brightness) and CMYK (cyan, magenta, yellow, black) colour spaces, basic shapes, scaling, bilinear interpolation, full TrueType antialiased and rotated text support, bezier curves, opening existing PNG images and more. Documentation in English and Spanish. Runs under Linux, Unix, Mac OS X and Windows. Requires libpng and optionally FreeType2 for the text support.

REQUIREMENTS
LibPNG (http://www.libpng.org/)
PNGwriter requires a properly installed libpng in order to work.

Freetype 2 (http://www.freetype.org)
PNGwriter uses FreeType 2 to render antialiased text with kerning, but it can be compiled without support for this. See below.

Fonts
If you are going to use PNGwriter's plot_text() function to plot text, then you'll need a TrueType font file. PNGwriter installs a few from the Free UCS Outline Fonts Project
(http://savannah.nongnu.org/projects/freefont) in /usr/local/share/pngwriter/fonts to get you started, or under whatever directory you chose with PREFIX at install time. See below.

INSTALLATION
Before you do anything, check the 'make.include' file and make sure it is a symbolic link to either one of 'make.include.linux' or 'make.include.osx'.

The current setting to 'make.include.linux' should cover most systems.

If you have an OS X system with libpng and FreeType2 installed via Fink in /sw, use 'make.include.osx'. You can also install PNGwriter via Fink itself. See http://fink.sourceforge.net for more info.

If you are using an old compiler, you may want to use 'make.include.linux.oldcpp', or alter your own makefile by adding -DOLD_CPP to the compiler flags.

If you wish to compile PNGwriter without FreeType2 support, then open make.include with your text editor and uncomment the line that says

# P_FREETYPE = 1

or, when compiling, add P_FREETYPE=1 to make's arguments.

Note that every time you compile a project that uses PNGwriter, and PNGwriter has been compiled without FreeType2 support, you will have to add -DNO_FREETYPE to your compilation flags.

To compile PNGwriter, just type

make

and then, as Root,

make install

If you are not root, or do not want to install in the default location (/usr/local/, set in make.include), then specify the location with PREFIX when calling make, like this:

make PREFIX=$HOME (for example)

or

make PREFIX=$HOME/programming (for example)

The default installation locations are:

  • libpngwriter.a in /usr/local/lib
  • pngwriter.h in /usr/local/include
  • The documentation in /usr/local/share/doc/pngwriter/doc/
  • The examples in /usr/local/share/doc/pngwriter/examples/
  • A few fonts in /usr/local/share/pngwriter/fonts

After installation, the following lines will list the installed location of the software (determined from whatever PREFIX was at install time):

  • libpngwriter.a:
  • pngwriter.h:
  • documentation:
  • examples:
  • fonts:

Look in examples/ for two examples of PNGwriter's use, and in doc/english/EXAMPLES for an explanation.

SUPPORT
For examples, a FAQ, etc, take a look at the PNGwriter Home page:

http://pngwriter.sourceforge.net/

If you have a problem or a suggestion, you can use the support forum at

http://sourceforge.net/projects/pngwriter/

You can also join the mailing list, available at the above address, or you can email me at the address shown in the header. I would really like to hear from you and what you are using PNGwriter for.

LEGAL
This library and its code are distributed under the GNU General Public License. The complete text of the license is included in this distribution.

UPDATES
New versions will appear from time to time so check the web page.

http://pngwriter.sourceforge.net/
and
http://sourceforge.net/projects/pngwriter/

You can also stay updated by checking PNGwriter's freshmeat.net page:

http://freshmeat.net/projects/pngwriter/

WHAT'S IN THIS RELEASE?

pngwriter-x.y.z
|-- Makefile
|-- README
|-- configure
|-- doc
| |-- english
| | |-- CHANGES
| | |-- EXAMPLES
| | |-- LICENSE
| | |-- PNGwriterQuickReference_EN.pdf | | `-- README
| `-- espaniol

|       |-- CAMBIOS
|       |-- EJEMPLOS
|       |-- LEAME
|       |-- LICENCIA
|       `-- PNGwriterQuickReference_ES.pdf

|-- examples
| |-- Makefile
| |-- burro.png
| |-- lyapunov.cc
| |-- lyapunov.espaniol.cc
| |-- pngtest.cc
| `-- pngtest.espaniol.cc
|-- fonts
| |-- FreeMonoBold.ttf
| `-- FreeSansBold.ttf
|-- make.include -> make.include.linux
|-- make.include.linux
|-- make.include.linux.oldcpp
|-- make.include.osx
`-- src

|-- Makefile
|-- pngwriter.cc
`-- pngwriter.h

THANKS

In no particular order, thanks to

> Xavier Andrade, Debian Package Maintainer for version 0.3.6 > Andres Kievsky
> Jorgen Pehrson, for the settext() function. > Nadav Rotem, for suggesting the bezier() function. > Jeramy Webb (jeramyw@gmail.com), for his generosity. > Mike Heller (mkheller@gmail.com), for his generosity. > Benjamin Raskob, for bringing to my attention the need for a resize() function. > Dr John Charlery, for his continued support with the Windows-specific documentation. > Tobias Kretz, for pointing out a bug in readfromfile(), and > Greg Roelofs and John Bowler on png-implement for their help fixing the bug. > Gurkan Sengun (gurkan@linuks.mine.nu, http://www.linuks.mine.nu/) for the filledtriangle() code.
> Miguel Gea (debian@miguelgea.com), Debian Package Maintainer for versions > 0.5.1
> Carsten Klapp (carstenklapp@users.sourceforge.net), for his help with the Fink package.

Have fun and tell me what you're up to!

Paul Blackburn
individual61@users.sourceforge.net


Other Sites

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.