Revision: 13074
http://harbour-project.svn.sourceforge.net/harbour-project/?rev=13074&view=rev
Author: snaiperis
Date: 2009-11-30 19:33:57 +0000 (Mon, 30 Nov 2009)
Log Message:
-----------
2009-11-30 21:31 UTC+0200 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
+ harbour/contrib/hbcairo
+ harbour/contrib/hbcairo/Makefile
+ harbour/contrib/hbcairo/context.c
+ harbour/contrib/hbcairo/core.c
+ harbour/contrib/hbcairo/imgae.c
+ harbour/contrib/hbcairo/paths.c
+ harbour/contrib/hbcairo/pdf.c
+ harbour/contrib/hbcairo/png.c
+ harbour/contrib/hbcairo/text.c
+ harbour/contrib/hbcairo/hbcairo.ch
+ harbour/contrib/hbcairo/hbcairo.h
+ Added Cairo graphics library
; It's a 2D graphic library that makes drawing commands platform
independent. Supported backends are: memory image, PDF, PNG, PS,
Win32 DC, SVG, Quartz, Xlib, started Qt development. I.e., you
can forget if you are drawing on screen, printer, PDF, or image
file from know. GTK and FireFox are only a sample of well-known
library/application that uses Cairo as rendering engine.
; Webpage: http://cairoprahics.org
; Binaries, development files and related packages (ex., libpng) for
Windows can be found at http://www.gtk.org/download-windows.html
; I've used multiple .c files so store Harbour level functions.
Functions are split into source files using help sections of
original Cairo docs (http://cairographics.org/manual/)
; You'll find the full documentation on Cairo webpage. Only a few
functions are spesific to Harbour and could not be found in
original documentaion. It accesses C language structures of Cairo
library. These functions are:
cairo_path_iterator_create( hPath ) --> hIterator
cairo_path_iterator_next( hIterator ) --> nType | NIL
cairo_path_iterator_get_points( hIterator ) --> aPoints
cairo_path_iterator_set_points( hIterator, aPoints ) --> lOk
; Internal Cairo pointers/handlers are implemented using collectible
pointers. It is destroyed after is not visible to probram any more.
Though original functions cairo_*_destroy() are also implemeted for
those, who wants to make it code clean.
; TOCHECK: GC pointers implementation, HB_USE_ITEM define.
; TODO: I've implemted not all functions of Cairo. Actually, the
minority, but it's enough to do some fancy things.
; TODO: Makefile support. I've completely failed to make a working
make system. I can compile library by copying Cairo *.h files into
source folder and making .dll import library manualy. I guess
Viktor can solve the issues in 3 minutes.
+ harbour/contrib/hbcairo/tests
+ harbour/contrib/hbcairo/tests/hbmk.hbm
+ harbour/contrib/hbcairo/tests/fancytxt.prg
+ harbour/contrib/hbcairo/tests/glyphdbg.prg
+ harbour/contrib/hbcairo/tests/hellow.prg
+ harbour/contrib/hbcairo/tests/table.prg
+ added a few samples to generate .pdf/.png images
; NOTE: one of the things that make me to spend 3 days for doing this
commit is never ending emails about .pdf library problems on
developers mailing list. I'm using Cairo for a few years, I've
mentioned it a few time on mailing list, but people does not look
at it before you do not show the final result. I hope this library
will be helpful for many, and test code will show both basic
(every day required) and fancy things you can do with Cairo.
Modified Paths:
--------------
trunk/harbour/ChangeLog
Added Paths:
-----------
trunk/harbour/contrib/hbcairo/
trunk/harbour/contrib/hbcairo/Makefile
trunk/harbour/contrib/hbcairo/context.c
trunk/harbour/contrib/hbcairo/core.c
trunk/harbour/contrib/hbcairo/hbcairo.ch
trunk/harbour/contrib/hbcairo/hbcairo.h
trunk/harbour/contrib/hbcairo/hbcairo.hbc
trunk/harbour/contrib/hbcairo/image.c
trunk/harbour/contrib/hbcairo/paths.c
trunk/harbour/contrib/hbcairo/pdf.c
trunk/harbour/contrib/hbcairo/png.c
trunk/harbour/contrib/hbcairo/tests/
trunk/harbour/contrib/hbcairo/tests/fancytxt.prg
trunk/harbour/contrib/hbcairo/tests/glyphdbg.prg
trunk/harbour/contrib/hbcairo/tests/hbmk.hbm
trunk/harbour/contrib/hbcairo/tests/hellow.prg
trunk/harbour/contrib/hbcairo/tests/table.prg
trunk/harbour/contrib/hbcairo/text.c
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour