blob: 80dd029ca26ac457fede70454d65a185b93f081d [file] [log] [blame]
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>ImageMagick - MagickCore, C API: Resize an Image</title>
<meta name="application-name" content="ImageMagick" />
<meta name="description" content="Use ImageMagick® to create, edit, compose, and convert digital images. Resize an image, crop it, change its shades and colors, add captions, and more." />
<meta name="application-url" content="https://imagemagick.org" />
<meta name="generator" content="PHP" />
<meta name="keywords" content="magickcore, c, api:, resize, an, image, image processing software" />
<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-2020 ImageMagick Studio LLC" />
<meta name="distribution" content="Global" />
<meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1" />
<meta property='og:url' content='../../' />
<meta property='og:title' content='ImageMagick' />
<meta property='og:image' content='../../../images/logo.png' />
<meta property='og:type' content='website' />
<meta property='og:site_name' content='ImageMagick' />
<meta property='og:description' content="Create, Edit, Compose, or Convert Digital Images" />
<meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" />
<link href="resize.html" rel="canonical" />
<link href="../../../images/wand.png" rel="icon" />
<link href="../../../images/wand.ico" rel="shortcut icon" />
<link href="../../assets/magick.css" rel="stylesheet" />
</head>
<body>
<nav class="navbar navbar-expand-md navbar-dark bg-dark fixed-top">
<div class="container-fluid">
<a class="navbar-brand" href="../../"><img class="d-block" id="icon" alt="ImageMagick" width="32" height="32" src="../../../images/wand.ico"/></a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#magick-navbars" aria-controls="magick-navbars" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="magick-navbars">
<ul class="navbar-nav me-auto mb-2 mb-md-0">
<li class="nav-item">
<a class="nav-link " href="../../www/index.html">Home</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../../www/download.html">Download</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../../www/command-line-tools.html">Tools</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../../www/command-line-processing.html">CLI</a>
</li>
<li class="nav-item">
<a class="nav-link " href="../../www/develop.html">Develop</a>
</li>
<li class="nav-item">
<a class="nav-link" target="_blank" href="https://github.com/ImageMagick/ImageMagick/discussions">Community</a>
</li>
<li class="nav-item">
<iframe src="https://github.com/sponsors/ImageMagick/button" title="Sponsor ImageMagick" height="35" width="107" style="border: 0;"></iframe>
</li>
</ul>
<form class="d-flex form-inline" action="https://imagemagick.org/script/search.php">
<input class="form-control me-2" type="text" name="q" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success" type="submit" name="sa">Search</button>
</form>
</div>
</div>
</nav>
<div class="container">
<script async="async" src="https://localhost/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle"
style="display:block"
data-ad-client="ca-pub-3129977114552745"
data-ad-slot="6345125851"
data-full-width-responsive="true"
data-ad-format="horizontal"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
<main class="container">
<div class="magick-template">
<div class="magick-header">
<p class="text-center"><a href="resize.html#AdaptiveResizeImage">AdaptiveResizeImage</a> &#8226; <a href="resize.html#InterpolativeResizeImage">InterpolativeResizeImage</a> &#8226; <a href="resize.html#LiquidRescaleImage">LiquidRescaleImage</a> &#8226; <a href="resize.html#MagnifyImage">MagnifyImage</a> &#8226; <a href="resize.html#MinifyImage">MinifyImage</a> &#8226; <a href="resize.html#ResampleImage">ResampleImage</a> &#8226; <a href="resize.html#ResizeImage">ResizeImage</a> &#8226; <a href="resize.html#SampleImage">SampleImage</a> &#8226; <a href="resize.html#ScaleImage">ScaleImage</a> &#8226; <a href="resize.html#ThumbnailImage">ThumbnailImage</a></p>
<h2><a href="../../api/MagickCore/resize_8c.html" id="AdaptiveResizeImage">AdaptiveResizeImage</a></h2>
<p>AdaptiveResizeImage() adaptively resize image with pixel resampling.</p>
<p>This is shortcut function for a fast interpolative resize using mesh interpolation. It works well for small resizes of less than +/- 50 of the original image size. For larger resizing on images a full filtered and slower resize function should be used instead.</p>
<p>The format of the AdaptiveResizeImage method is:</p>
<pre class="text">
Image *AdaptiveResizeImage(const Image *image,const size_t columns,
const size_t rows,ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd>
</dd>
<dd> </dd>
<dl class="dl-horizontal">
<dt>image</dt>
<dd>the image. </dd>
<dd> </dd>
<dt>columns</dt>
<dd>the number of columns in the resized image. </dd>
<dd> </dd>
<dt>rows</dt>
<dd>the number of rows in the resized image. </dd>
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
<h2><a href="../../api/MagickCore/resize_8c.html" id="InterpolativeResizeImage">InterpolativeResizeImage</a></h2>
<p>InterpolativeResizeImage() resizes an image using the specified interpolation method.</p>
<p>The format of the InterpolativeResizeImage method is:</p>
<pre class="text">
Image *InterpolativeResizeImage(const Image *image,const size_t columns,
const size_t rows,const PixelInterpolateMethod method,
ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd>
</dd>
<dd> </dd>
<dl class="dl-horizontal">
<dt>image</dt>
<dd>the image. </dd>
<dd> </dd>
<dt>columns</dt>
<dd>the number of columns in the resized image. </dd>
<dd> </dd>
<dt>rows</dt>
<dd>the number of rows in the resized image. </dd>
<dd> </dd>
<dt>method</dt>
<dd>the pixel interpolation method. </dd>
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
<h2><a href="../../api/MagickCore/resize_8c.html" id="LiquidRescaleImage">LiquidRescaleImage</a></h2>
<p>LiquidRescaleImage() rescales image with seam carving.</p>
<p>The format of the LiquidRescaleImage method is:</p>
<pre class="text">
Image *LiquidRescaleImage(const Image *image,const size_t columns,
const size_t rows,const double delta_x,const double rigidity,
ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd>
</dd>
<dd> </dd>
<dl class="dl-horizontal">
<dt>image</dt>
<dd>the image. </dd>
<dd> </dd>
<dt>columns</dt>
<dd>the number of columns in the rescaled image. </dd>
<dd> </dd>
<dt>rows</dt>
<dd>the number of rows in the rescaled image. </dd>
<dd> </dd>
<dt>delta_x</dt>
<dd>maximum seam transversal step (0 means straight seams). </dd>
<dd> </dd>
<dt>rigidity</dt>
<dd>introduce a bias for non-straight seams (typically 0). </dd>
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
<h2><a href="../../api/MagickCore/resize_8c.html" id="MagnifyImage">MagnifyImage</a></h2>
<p>MagnifyImage() doubles the size of the image with a pixel art scaling algorithm.</p>
<p>The format of the MagnifyImage method is:</p>
<pre class="text">
Image *MagnifyImage(const Image *image,ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd>
</dd>
<dd> </dd>
<dl class="dl-horizontal">
<dt>image</dt>
<dd>the image. </dd>
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
<h2><a href="../../api/MagickCore/resize_8c.html" id="MinifyImage">MinifyImage</a></h2>
<p>MinifyImage() is a convenience method that scales an image proportionally to half its size.</p>
<p>The format of the MinifyImage method is:</p>
<pre class="text">
Image *MinifyImage(const Image *image,ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd>
</dd>
<dd> </dd>
<dl class="dl-horizontal">
<dt>image</dt>
<dd>the image. </dd>
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
<h2><a href="../../api/MagickCore/resize_8c.html" id="ResampleImage">ResampleImage</a></h2>
<p>ResampleImage() resize image in terms of its pixel size, so that when displayed at the given resolution it will be the same size in terms of real world units as the original image at the original resolution.</p>
<p>The format of the ResampleImage method is:</p>
<pre class="text">
Image *ResampleImage(Image *image,const double x_resolution,
const double y_resolution,const FilterType filter,
ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd>
</dd>
<dd> </dd>
<dl class="dl-horizontal">
<dt>image</dt>
<dd>the image to be resized to fit the given resolution. </dd>
<dd> </dd>
<dt>x_resolution</dt>
<dd>the new image x resolution. </dd>
<dd> </dd>
<dt>y_resolution</dt>
<dd>the new image y resolution. </dd>
<dd> </dd>
<dt>filter</dt>
<dd>Image filter to use. </dd>
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
<h2><a href="../../api/MagickCore/resize_8c.html" id="ResizeImage">ResizeImage</a></h2>
<p>ResizeImage() scales an image to the desired dimensions, using the given filter (see AcquireFilterInfo()).</p>
<p>If an undefined filter is given the filter defaults to Mitchell for a colormapped image, a image with a matte channel, or if the image is enlarged. Otherwise the filter defaults to a Lanczos.</p>
<p>ResizeImage() was inspired by Paul Heckbert's "zoom" program.</p>
<p>The format of the ResizeImage method is:</p>
<pre class="text">
Image *ResizeImage(Image *image,const size_t columns,const size_t rows,
const FilterType filter,ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd>
</dd>
<dd> </dd>
<dl class="dl-horizontal">
<dt>image</dt>
<dd>the image. </dd>
<dd> </dd>
<dt>columns</dt>
<dd>the number of columns in the scaled image. </dd>
<dd> </dd>
<dt>rows</dt>
<dd>the number of rows in the scaled image. </dd>
<dd> </dd>
<dt>filter</dt>
<dd>Image filter to use. </dd>
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
<h2><a href="../../api/MagickCore/resize_8c.html" id="SampleImage">SampleImage</a></h2>
<p>SampleImage() scales an image to the desired dimensions with pixel sampling. Unlike other scaling methods, this method does not introduce any additional color into the scaled image.</p>
<p>The format of the SampleImage method is:</p>
<pre class="text">
Image *SampleImage(const Image *image,const size_t columns,
const size_t rows,ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd>
</dd>
<dd> </dd>
<dl class="dl-horizontal">
<dt>image</dt>
<dd>the image. </dd>
<dd> </dd>
<dt>columns</dt>
<dd>the number of columns in the sampled image. </dd>
<dd> </dd>
<dt>rows</dt>
<dd>the number of rows in the sampled image. </dd>
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
<h2><a href="../../api/MagickCore/resize_8c.html" id="ScaleImage">ScaleImage</a></h2>
<p>ScaleImage() changes the size of an image to the given dimensions.</p>
<p>The format of the ScaleImage method is:</p>
<pre class="text">
Image *ScaleImage(const Image *image,const size_t columns,
const size_t rows,ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd>
</dd>
<dd> </dd>
<dl class="dl-horizontal">
<dt>image</dt>
<dd>the image. </dd>
<dd> </dd>
<dt>columns</dt>
<dd>the number of columns in the scaled image. </dd>
<dd> </dd>
<dt>rows</dt>
<dd>the number of rows in the scaled image. </dd>
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
<h2><a href="../../api/MagickCore/resize_8c.html" id="ThumbnailImage">ThumbnailImage</a></h2>
<p>ThumbnailImage() changes the size of an image to the given dimensions and removes any associated profiles. The goal is to produce small low cost thumbnail images suited for display on the Web.</p>
<p>The format of the ThumbnailImage method is:</p>
<pre class="text">
Image *ThumbnailImage(const Image *image,const size_t columns,
const size_t rows,ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd>
</dd>
<dd> </dd>
<dl class="dl-horizontal">
<dt>image</dt>
<dd>the image. </dd>
<dd> </dd>
<dt>columns</dt>
<dd>the number of columns in the scaled image. </dd>
<dd> </dd>
<dt>rows</dt>
<dd>the number of rows in the scaled image. </dd>
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
</div>
</div>
</main><!-- /.container -->
<footer class="magick-footer">
<div class="container-fluid">
<a href="../../www/security-policy.html">Security</a>
<a href="../../www/news.html">News</a>
<a href="resize.html#"><img class="d-inline" id="wand" alt="And Now a Touch of Magick" width="16" height="16" src="../../../images/wand.ico"/></a>
<a href="../../www/links.html">Related</a>
<a href="../../www/sitemap.html">Sitemap</a>
<br/>
<a href="../../www/support.html">Sponsor</a>
<a href="../../www/cite.html">Cite</a>
<a href="http://pgp.mit.edu/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a>
<a href="../../www/contact.html">Contact Us</a>
<br/>
<a href="https://github.com/imagemagick/imagemagick" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" width="2%" height="2%" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a>
<a href="https://twitter.com/imagemagick" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" width="2%" height="2%" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a>
<br/>
<small>© 1999-2021 ImageMagick Studio LLC</small>
</div>
</footer>
<!-- Javascript assets -->
<script src="../../assets/magick.js" ></script>
</body>
</html>