From d0a9b9a03fc7ae74ef8a64593ac6b592526ec4d5 Mon Sep 17 00:00:00 2001 From: pp Date: Wed, 19 May 2004 04:59:31 +0000 Subject: - initial import git-svn-id: https://siedziba.pl:790/svn/repos/php-imlib/trunk@7 455248ca-bdda-0310-9134-f4ebb693071a --- examples/draw.php | 69 +++++++++++++++++++++++++++++++ examples/flip.php | 91 +++++++++++++++++++++++++++++++++++++++++ examples/gradtest.php | 57 ++++++++++++++++++++++++++ examples/imlib_ext_filters.php | 17 ++++++++ examples/imlib_filter.php | 58 ++++++++++++++++++++++++++ examples/pstext.php | 10 +++++ examples/scale.php | 30 ++++++++++++++ examples/test.jpg | Bin 0 -> 16921 bytes examples/text.php | 17 ++++++++ 9 files changed, 349 insertions(+) create mode 100644 examples/draw.php create mode 100644 examples/flip.php create mode 100644 examples/gradtest.php create mode 100644 examples/imlib_ext_filters.php create mode 100644 examples/imlib_filter.php create mode 100644 examples/pstext.php create mode 100644 examples/scale.php create mode 100644 examples/test.jpg create mode 100644 examples/text.php (limited to 'examples') diff --git a/examples/draw.php b/examples/draw.php new file mode 100644 index 0000000..f9469e2 --- /dev/null +++ b/examples/draw.php @@ -0,0 +1,69 @@ +create(225,260); + +$outlinecolor = Array(255,0,0,255); +$color = Array(255,127,0,255); + +$box = new ImlibDraw(); +$box->set_image($im->get_id()); +$box->set_color_array($outlinecolor); +$box->draw_rectangle(7,7,106,56); +$box->set_color_array($color); +$box->fill_rectangle(10,10,100,50); + +$poly = new ImlibPoly(); +$poly->new_poly(); +$poly->set_image($im->get_id()); +$poly->set_color(255,0,255,255); +$poly->add_point(100,100); +$poly->add_point(215,110); +$poly->add_point(150,215); +$poly->add_point(102,255); + +// The cliprect will leave a gap in the middle of this polygon +$poly->set_cliprect(100,50,125,110); // Draw the top +$poly->draw(); +$poly->set_cliprect(100,190,125,70); // Draw the bottom +$poly->draw(); +$poly->free(); + +$poly->set_cliprect(0,0,0,0); // Turns off the clipping rectangle +$poly->new_poly(); +$poly->set_color(255,255,255,255); +$poly->add_point(106,106); +$poly->add_point(205,115); +$poly->add_point(147,211); +$poly->add_point(106,245); + +$poly->draw(); +$poly->free(); + +// This will draw a few pseudo-randomly colored ellipses +$j = 30; +for ($i = 90; $i < 260; $i += 20) +{ + $box->set_color($i,$i*2,255-$i*2,255); + $box->draw_ellipse($j,$i,10,$j/2); + $j += 20; + if ($j > 70) + $j = 25; +} + +$im->save('./draw.png'); +$im->free(); + +?> diff --git a/examples/flip.php b/examples/flip.php new file mode 100644 index 0000000..2f6b3c6 --- /dev/null +++ b/examples/flip.php @@ -0,0 +1,91 @@ +$cb(); + $new = $obj->create_clone(); + $obj->$cb(); + return $new; +} + +$im = new ImlibImage(); +$im->load($srcname); +$orig = $im->create_scaled($thumbw,$thumbh); +$im->free(); +$imw = $orig->get_width(); +$imh = $orig->get_height(); + +// Create the image large enough to fit four scaled copies of $srcname +$dst = new ImlibImage(); +$dst->create(2*$imw + 3*$padding, 2*$imh + 5*$padding); + +// Load in a font and set the color and image to draw on +$txt = new ImlibText(); +$txt->set_color_array($textarray); +$txt->set_image($dst->get_id()); +$txt->load('','./ARIAL',16); + +// Get a drawing object and set its color and image to draw on +$box = new ImlibDraw(); +$box->set_color_array($bgarray); +$box->set_image($dst->get_id()); + +$orig_alpha = $orig->has_alpha(); +$box->fill_rectangle($padding-3,$padding-3, $imw+6,$imh+6); +$txt->draw($padding,$padding+$imh,'Original'); +$orig->blend_onto_image($dst->get_id(),0,0,$orig_alpha,$imw,$imh, + $padding,$padding, $imw,$imh,0,$orig_alpha,0); + +$horiz = flipCreate($orig,'horizontal'); +$horiz_alpha = $horiz->has_alpha(); +$box->fill_rectangle(2*$padding-3+$imw,$padding-3, $imw+6,$imh+6); +$txt->draw(2*$padding+$imw,$padding+$imh,'Horizontal'); +$horiz->blend_onto_image($dst->get_id(),0,0,$horiz_alpha,$imw,$imh, + 2*$padding+$imw,$padding, $imw,$imh,0,$horiz_alpha,0); + +$vert = flipCreate($orig,'vertical'); +$vert_alpha = $vert->has_alpha(); +$box->fill_rectangle($padding-3,3*$padding-3+$imh, $imw+6,$imh+6); +$txt->draw($padding,3*$padding+2*$imh,'Vertical'); +$vert->blend_onto_image($dst->get_id(),0,0,$vert_alpha,$imw,$imh,$padding, + 3*$padding+$imh,$imw,$imh,0,$vert_alpha,0); + +// In order to keep things simple, this image will be cropped off if it's +// not square. This is done to keep things simple. To show the whole +// diagonally cropped image, the dimensions for $dst would need to be +// calculated from the resulting height of the diagonal version of the image +$diag = flipCreate($orig,'diagonal'); +$diag_alpha = $diag->has_alpha(); +$box->fill_rectangle(2*$padding-3+$imw,3*$padding-3+$imh, $imw+6,$imh+6); +$txt->draw(2*$padding+$imw,3*$padding+2*$imh,'Diagonal'); +$diag->blend_onto_image($dst->get_id(),0,0,$diag_alpha,$imw,$imh,2*$padding+$imw, + 3*$padding+$imh,$imw,$imh,0,$diag_alpha,0); + +$dst->save('./flip.png'); +$dst->free(); + +?> diff --git a/examples/gradtest.php b/examples/gradtest.php new file mode 100644 index 0000000..a05b259 --- /dev/null +++ b/examples/gradtest.php @@ -0,0 +1,57 @@ +create(250,150); +$cr->create(); +$cr->set_image($im->get_id()); +$d->set_image($im->get_id()); +$t->set_image($im->get_id()); +$t->load('','banco.ttf','25'); + +// Large blue rectangle and gradient +$d->set_color(22,28,235,255); +$d->fill_rectangle(10,10,210,110); +$cr->add_color_array(0, $red); +$cr->add_color(0,0,225,225,255); +$cr->add_color_array(0, $blue); +$cr->fill_rectangle(15,15,200,100,125); + +// Text with semitransparent shadow +$t->set_color_array($shadow); +$t->draw(43,48,'Showing off.'); +$t->set_color_array($text); +$t->draw(40,45,'Showing off.'); + +// Purple semitransparent square +$d->set_color(195,105,195,127); +$d->fill_rectangle(30,90,50,50); + +// Green-to-transparent gradient square +$cr->free(); +$cr->create(); +$cr->add_color(0,0,255,0,0); +$cr->add_color(0,0,255,0,50); +$cr->add_color(0,0,255,0,255); +$cr->fill_rectangle(90,90,50,50,235); + +$im->save('testgrad.png',50); + +?> diff --git a/examples/imlib_ext_filters.php b/examples/imlib_ext_filters.php new file mode 100644 index 0000000..1b785bc --- /dev/null +++ b/examples/imlib_ext_filters.php @@ -0,0 +1,17 @@ +2)); +imlib_apply_filter($im,"bump_map_point",array('map'=>$im2,'depth'=>500,'x'=>100,'y'=>200,'z'=>20)); +imlib_apply_filter($im,"colormod",array('brightness'=>0.3)); +imlib_apply_filter($im,"php_tint",array('red'=>255,'green'=>0,'blue'=>0,'alpha'=>40)); + +Header('Content-type: image/jpeg'); + +imlib_dump_image($im); +imlib_free_image($im); +imlib_free_image($im2); + +?> diff --git a/examples/imlib_filter.php b/examples/imlib_filter.php new file mode 100644 index 0000000..6bda8c5 --- /dev/null +++ b/examples/imlib_filter.php @@ -0,0 +1,58 @@ + diff --git a/examples/pstext.php b/examples/pstext.php new file mode 100644 index 0000000..93c9153 --- /dev/null +++ b/examples/pstext.php @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/examples/scale.php b/examples/scale.php new file mode 100644 index 0000000..33be4c9 --- /dev/null +++ b/examples/scale.php @@ -0,0 +1,30 @@ + +
+ Filename

+ +
+ diff --git a/examples/test.jpg b/examples/test.jpg new file mode 100644 index 0000000..bb297aa Binary files /dev/null and b/examples/test.jpg differ diff --git a/examples/text.php b/examples/text.php new file mode 100644 index 0000000..d23def8 --- /dev/null +++ b/examples/text.php @@ -0,0 +1,17 @@ + -- cgit v1.2.3