Tryag File Manager
Home
-
Turbo Force
Current Path :
/
proc
/
self
/
root
/
usr
/
share
/
doc
/
ImageMagick-6.2.8
/
www
/
api
/
Upload File :
New :
File
Dir
//proc/self/root/usr/share/doc/ImageMagick-6.2.8/www/api/shear.html
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <style type="text/css"><!-- @import url("../../www/magick.css"); //--></style> <title>ImageMagick: MagickCore, C API for ImageMagick: Shear or Rotate an Image by an Arbitrary Angle</title> <meta http-equiv="Content-Language" content="en-US"/> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/> <meta name="Generator" content="PHP"/> <meta name="Keywords" content="magickcore, c, api, for, imagemagick:, shear, or, rotate, an, image, by, an, arbitrary, angle, ImageMagick, PerlMagick, Magick++, Image, Magick"/> <meta name="Description" content="ImageMagick (TM) is a free software suite to create, edit and compose bitmap images. It can read, convert and write images in a large variety of formats. Images can be cropped, colors can be changed, various effects can be applied, images can be rotated and combined, and text, lines, polygons, ellipses and Bézier curves can be added to images and stretched and rotated. ImageMagick is free software: it is delivered with full source code and can be freely used, copied, modified and distributed. Its license is compatible with the GPL. It runs on all major operating systems. Most of the functionality of ImageMagick can be used interactively from the command line; more often, however, the features are used from programs written in the programming languages Perl, C, C++, Python, PHP, Ruby or Java, for which ready-made ImageMagick interfaces (PerlMagick, Magick++, PythonMagick, MagickWand for PHP, RubyMagick, and JMagick) are available. This makes it possible to modify or create images automatically and dynamically. ImageMagick supports many image formats (over 90 major formats) including popular formats like TIFF, JPEG, PNG, PDF, PhotoCD, and GIF."/> <meta name="Rating" content="GENERAL"/> <meta name="Robots" content="INDEX, FOLLOW"/> <meta name="Generator" content="ImageMagick Studio LLC"/> <meta name="Author" content="ImageMagick Studio LLC"/> <meta name="Revisit-after" content="2 DAYS"/> <meta name="Resource-type" content="document"/> <meta name="Copyright" content="Copyright (c) 1999-2006 ImageMagick Studio LLC"/> <meta name="Distribution" content="Global"/> <link rel="shortcut icon" href="/../images/wand.ico" type="image/x-icon"/> </head> <body id="www-imagemagick-org"> <table id="titlebar" style="width: 100%;background-color: #f5f5f5" cellpadding="0" cellspacing="0" border="0" summary="ImageMagick"> <tbody> <tr valign="top"> <td align="left"><a href="../../index.html"><img id="titlebar-west" src="../../images/script.png" alt="[ImageMagick]" width="350" height="60" border="0" vspace="28" name="titlebar-west" /></a></td> <td width="35%"><br /></td> <td align="left"><a href="http://www.imagemagick.org/" target="1963427229"><img id="titlebar-west" src="../../images/sponsor.jpg" alt="[sponsor]" border="0" vspace="28" name="titlebar-west" /></a></td> <td width="65%"><br /></td> <td style="background-color: white" align="right"><a href="../../index.html"><img src="../../images/sprite.jpg" alt="" width="114" height="118" border="0" name="titlebar-east" /></a></td> <td style="background-color: white" align="right"><a href="../../index.html"><img id="titlebar-east" src="../../images/logo.jpg" alt="" width="114" height="118" border="0" name="titlebar-east" /></a></td> </tr> </tbody> </table> <table style="width: 100%" border="0" cellpadding="0" cellspacing="0" summary=""> <tbody> <tr valign="top" style="height: 100%;"> <td id="menu" width="1%" height="100%"> <p><a href="#main">Skip to page contents</a></p> <span>[</span> <a href="../../index.html">About ImageMagick</a> <a href="../../www/command-line-tools.html">Command-line Tools</a> <a href="../../www/command-line-processing.html" class="sub">Processing</a> <a href="../../www/command-line-options.html" class="sub">Options</a> <a href="../../www/api.html">Program Interfaces</a> <a href="../../www/magick-wand.html" class="sub">MagickWand</a> <a href="../../www/magick-core.html" class="sub">MagickCore</a> <a href="../../www/perl-magick.html" class="sub">PerlMagick</a> <a href="../../www/architecture.html">Architecture</a> <span>]</span><br /><span>[</span> <a href="../../www/install-source.html">Install from Source</a> <a href="../../www/install-source.html#unix" class="sub">Unix</a> <a href="../../www/install-source.html#windows" class="sub">Windows</a> <a href="../../www/binary-releases.html">Binary Releases</a> <a href="../../www/binary-releases.html#unix" class="sub">Unix</a> <a href="../../www/binary-releases.html#windows" class="sub">Windows</a> <a href="../../www/resources.html">Resources</a> <span>]</span><br /><span>[</span> <a href="../../www/download.html">Download</a> <span>]</span><br /><span>[</span> <a href="../../www/links.html">Links</a> <span>]</span><br /><br /><span>[</span> <a href="../../www/sponsors.html">Sponsors</a> <a href="http://www.greetme.com" class="sponsor" target="sponsor">Making Communication<br />Personal</a><!-- 20990101 --> <span>]</span> </td> <td id="main" valign="top"> <p class="navigation-index">[ <a href="#AffineTransformImage">AffineTransformImage</a> | <a href="#RotateImage">RotateImage</a> | <a href="#ShearImage">ShearImage</a> ]</p> <div style="margin: auto;"> <h2><a name="AffineTransformImage">AffineTransformImage</a></h2> </div> <p>AffineTransformImage() transforms an image as dictated by the affine matrix. It allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p> <p>The format of the AffineTransformImage method is:</p> <pre class="code"> Image *AffineTransformImage(const Image *image,AffineMatrix *affine, ExceptionInfo *exception) </pre> <p>A description of each parameter follows:</p> <h4>image</h4> <p>The image.</p> <h4>affine</h4> <p>The affine transform.</p> <h4>exception</h4> <p>Return any errors or warnings in this structure.</p> <div style="margin: auto;"> <h2><a name="RotateImage">RotateImage</a></h2> </div> <p>RotateImage() creates a new image that is a rotated copy of an existing one. Positive angles rotate counter-clockwise (right-hand rule), while negative angles rotate clockwise. Rotated images are usually larger than the originals and have 'empty' triangular corners. X axis. Empty triangles left over from shearing the image are filled with the background color defined by member 'background_color' of the image. RotateImage allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p> <p>RotateImage() is based on the paper "A Fast Algorithm for General Raster Rotatation" by Alan W. Paeth. RotateImage is adapted from a similar method based on the Paeth paper written by Michael Halle of the Spatial Imaging Group, MIT Media Lab.</p> <p>The format of the RotateImage method is:</p> <pre class="code"> Image *RotateImage(const Image *image,const double degrees, ExceptionInfo *exception) </pre> <p>A description of each parameter follows.</p> <h4>image</h4> <p>The image.</p> <h4>degrees</h4> <p>Specifies the number of degrees to rotate the image.</p> <h4>exception</h4> <p>Return any errors or warnings in this structure.</p> <div style="margin: auto;"> <h2><a name="ShearImage">ShearImage</a></h2> </div> <p>ShearImage() creates a new image that is a shear_image copy of an existing one. Shearing slides one edge of an image along the X or Y axis, creating a parallelogram. An X direction shear slides an edge along the X axis, while a Y direction shear slides an edge along the Y axis. The amount of the shear is controlled by a shear angle. For X direction shears, x_shear is measured relative to the Y axis, and similarly, for Y direction shears y_shear is measured relative to the X axis. Empty triangles left over from shearing the image are filled with the background color defined by member 'background_color' of the image.. ShearImage() allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p> <p>ShearImage() is based on the paper "A Fast Algorithm for General Raster Rotatation" by Alan W. Paeth.</p> <p>The format of the ShearImage method is:</p> <pre class="code"> Image *ShearImage(const Image *image,const double x_shear, const double y_shear,ExceptionInfo *exception) </pre> <p>A description of each parameter follows.</p> <h4>image</h4> <p>The image.</p> <h4>x_shear, y_shear</h4> <p>Specifies the number of degrees to shear the image.</p> <h4>exception</h4> <p>Return any errors or warnings in this structure.</p> </td> <td id="margin" width="1%" height="100%" valign="top" align="right"> </td> </tr> </tbody> </table> <div id="linkbar"> <a href="http://redux.imagemagick.org/discussion-server" target="1478543711">Discourse Server</a> | <a href="../../www/mailing-list.html">Mailing Lists</a> | <a href="http://redux.imagemagick.org/gallery" target="1499165571">Image Gallery</a> | <a href="http://redux.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi" target="1071616845">ImageMagick Studio</a> </div> <div> <span id="footer-west">© 1999-2006 ImageMagick Studio LLC</span> </div> <div style="clear: both; margin: 0; width: 100%; "></div> </body> </html>