Revision: 34555
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at October 25, 2010 07:17 by Jamie
Initial Code
function image_offset_x($image, $offset){ $width = imagesx( $image ); $height = imagesy( $image ); // Values too large need to be modded. // (this is my first use of %mod that doesn't have to do with alternating table rows.) if( abs($offset) > $width){ $offset = $offset % $width; } // Negative values need to be handled differently. if($offset < 0){ $offset = $width + $offset; } // Do nothing for zero offset values. if($offset == 0){ return $image; } $new_image = imagecreatetruecolor($width, $height); $chunk1_w = $offset; $chunk1_h = $height; $chunk1_xs = $width - $offset; $chunk1_ys = 0; $chunk1_xd = 0; $chunk1_yd = 0; $chunk2_w = $width - $offset; $chunk2_h = $height; $chunk2_xs = 0; $chunk2_ys = 0; $chunk2_xd = $offset; $chunk2_yd = 0; // Copy first chunk imagecopy($new_image,$image,$chunk1_xd,$chunk1_yd, $chunk1_xs,$chunk1_ys,$chunk1_w,$chunk1_h); // Copy second chunk imagecopy($new_image,$image,$chunk2_xd,$chunk2_yd, $chunk2_xs,$chunk2_ys,$chunk2_w,$chunk2_h); return $new_image; }
Initial URL
Initial Description
This code war written for a project I'm working on where a map of the world may need to be offset to center the view on specific areas. I'm also using it as a part of an iterative blur function to prevent seams from the blur operation. I would like to eventually tweak the function to receive both X & Y values for the offset command, but am a tad lazy right now on this fine Sunday afternoon.
Initial Title
Photoshop Like "Offset" Function
Initial Tags
image, filter
Initial Language
PHP