imagemagick/www/gradient.html

283 lines
16 KiB
HTML
Raw Normal View History

2023-02-03 21:16:55 +08:00
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<title>ImageMagick - Image Gradients</title>
<meta name="application-name" content="ImageMagick" />
<meta name="description" content="Use ImageMagick® to create, edit, compose, and convert bitmap images. Resize an image, crop it, change its shades and colors, add captions, and more." />
<meta name="application-url" content="https://legacy.imagemagick.org" />
<meta name="generator" content="PHP" />
<meta name="keywords" content="image, gradients, image converter, image resizer, image editor, photo editor, jpg converter, png converter, tiff converter, vector images, online, free, swiss army" />
<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='https://legacy.imagemagick.org/' />
<meta property='og:title' content='ImageMagick Legacy' />
<meta property='og:image' content='https://legacy.imagemagick.org/images/logo.png' />
<meta property='og:type' content='website' />
<meta property='og:site_name' content='ImageMagick Legacy' />
<meta property='og:description' content="Create, Edit, Compose, or Convert Bitmap Images" />
<meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" />
<meta name="msvalidate.01" content="103012B23499FEB70AEA89C83C274AC7" />
<link href="gradient.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 fixed-top bg-dark">
<a class="navbar-brand" href="../index.html"><img class="d-block" id="wand" alt="ImageMagick" width="32" height="32" src="../images/wand.ico"/></a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsMagick" aria-controls="navbarsMagick" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="navbar-collapse collapse" id="navbarsMagick" style="">
<ul class="navbar-nav mr-auto">
<li class="nav-item ">
<a class="nav-link" href="../index.html">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item ">
<a class="nav-link" href="download.html">Download</a>
</li>
<li class="nav-item ">
<a class="nav-link" href="command-line-tools.html">Tools</a>
</li>
<li class="nav-item ">
<a class="nav-link" href="command-line-processing.html">Command-line</a>
</li>
<li class="nav-item ">
<a class="nav-link" href="develop.html">Develop</a>
</li>
<li class="nav-item">
<a class="nav-link" target="_blank" href="https://github.com/ImageMagick/ImageMagick6/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>
</div>
2023-02-03 21:24:11 +08:00
<form class="form-inline my-2 my-lg-0" action="https://legacy.imagemagick.org/script/search.php">
<input class="form-control mr-sm-2" type="text" name="q" placeholder="Search" aria-label="Search" />
2023-02-03 21:16:55 +08:00
<button class="btn btn-outline-success my-2 my-sm-0" type="submit" name="sa">Search</button>
</form>
</nav>
<div role="main" 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">
<h1 class="text-center">Create a Gradual Blend of Two Colors</h1>
<p class="lead magick-description">An image gradient creates a gradual blend between two colors formed into a shape that is linear, circular, or ellipical.</p>
<p>For a linear gradient, the operator is either:</p>
<pre class="highlight"><code>gradient:
gradient:color1-color2
</code></pre>
<p> The for a radial gradient, the operator is either:</p>
<pre class="highlight"><code>radial-gradient:
radial-gradient:color1-color2
</code></pre>
<p> In the above, color1 is the fromColor and color2 is the toColor, as described in more detail below. The default is white for color1 and black for color2, i.e., white-black.</p>
<p>The default for a linear gradient has color1 at the top of the image and color2 at the bottom of the image. Similarly, the default for a radial gradient has color1 at the center of the image and color2 at the boundary of the image.</p>
<p>Gradient colors may be any valid color defined per <a href="../www/color.html" target="_blank">../www/color.html</a>. The named colors of black/white/grayXX and gray(XX[%]) are non-linear gray. For Unix systems, enclose rgb(a) and hex colors in quotes. Use double quotes, if using variables for the values.</p>
<p>Here is an example linear (as opposed to radial) gradient:</p>
<pre class="highlight"><code>convert -size 256x256 gradient: linear_gradient.png
convert -size 256x256 gradient:white-black linear_gradient.png
</code></pre>
<p><img src="../images/gradients/linear_gradient.png" width="256" height="256" /></p>
<p>If you want a radial gradient, try:</p>
<pre class="highlight"><code>convert -size 256x256 radial-gradient: radial_gradient.png
convert -size 256x256 radial-gradient:white-black radial_gradient.png
</code></pre>
<p><img src="../images/gradients/radial_gradient.png" width="256" height="256" /></p>
<p>If you want non-linear grayscale gradients, then add -colorspace RGB -colorspace gray
2023-02-03 21:24:11 +08:00
before saving the output. For example:</p>
2023-02-03 21:16:55 +08:00
<pre class="highlight"><code>convert -size 256x256 gradient: linear_gradient.png
convert -size 256x256 gradient:white-black -colorspace RGB -colorspace gray linear_linear_gradient.png
</code></pre>
<pre class="highlight"><code>convert -size 256x256 radial-gradient: radial_gradient.png
convert -size 256x256 radial-gradient:white-black -colorspace RGB -colorspace gray linea_radial_gradient.png
</code></pre>
<p>As of IM 6.9.2.5, gradients have been enhanced through the use of several -defines.</p>
<table class="table table-sm table-hover">
<tr>
<td><code>-define gradient:vector=<var>x1</var>,<var>y1</var>, <var>x2</var>,<var>y2</var></code></td>
<td>Specifies the direction of the linear gradient going from vector1
(x1,y1) to vector2 (x2,y2). Color1 (fromColor) will be located at vector
position x1,y1 and color2 (toColor) will be located at vector position
x2,y2.</td>
</tr>
<tr>
<td><code>-define gradient:center=<var>x</var>,<var>y</var></code></td>
<td>Specifies the coordinates of the center point for the radial gradient.
The default is the center of the image.</td>
</tr>
<tr>
<td><code>-define gradient:radii=<var>x</var>,<var>y</var></code></td>
<td>Specifies the x and y radii of the gradient. If the x radius and the y
radius are equal, the shape of the radial gradient will be a circle. If
they differ, then the shape will be an ellipse. The default values are the
maximum of the half width and half height of the image.</td>
</tr>
<tr>
<td><code>-define gradient:angle=<var>angle in degrees</var></code></td>
<td>For a linear gradient, this specifies the direction of the gradient
going from color1 to color2 in a clockwise positive manner relative to
north (up). For a radial gradient, this specifies the rotation of the
gradient in a clockwise positive manner from its normal X-Y
orientation.</td>
</tr>
<tr>
<td><code>-define gradient:bounding-box=<var>width</var>x<var>height</var>+<var>x</var>+<var>y</var></code></td>
<td>Limits the gradient to a larger or smaller region than the image
dimensions. If the region defined by the bounding box is smaller than the
image, then color1 will be the color of the background.</td>
</tr>
</table>
<p>We also support two convenience defines for setting the linear gradient direction and the radial gradient shape.</p>
<table class="table table-sm table-hover">
<tr>
<td><code>-define gradient:direction=<em>{NorthWest, North, Northeast, West, East, SouthWest, South, SouthEast}</em></code></td>
<td>Specifies the direction of the linear gradient towards the
top/bottom/left/right or diagonal corners.</td>
</tr>
<tr>
<td><code>-define gradient:extent=<em>{Circle, Diagonal, Ellipse, Maximum, Minimum}</em></code></td>
<td>Specifies the shape of an image centered radial gradient. Circle and
Maximum draw a circular radial gradient even for rectangular shaped images
of radius equal to the larger of the half-width and half-height of the
image. The Circle and Maximum options are both equivalent to the default
radial gradient. The Minimum option draws a circular radial gradient
even for rectangular shaped images of radius equal to the smaller of the
half-width and half-height of the image. The Diagonal option draws a
circular radial gradient even for rectangular shaped images of radius equal
to the half-diagonal of the image. The Ellipse options draws an elliptical
radial gradient for rectangular shaped images of radii equal to half the
width and half the height of the image.</td>
</tr>
</table>
<p>Examples</p>
<p>The default linear gradient may also be generated in any of the following ways (or by reversing the direction and swapping color1 and color2):</p>
<pre class="highlight"><code>convert -size 256x128 -define gradient:direction=north gradient:black-white linear_gradient_default.png
convert -size 256x128 -define gradient:angle=0 gradient:black-white linear_gradient_default.png
</code></pre>
<p><img src="../images/gradients/linear_gradient_default.png" width="256" height="128" /></p>
<p>The equivalent of </p>
<pre class="highlight"><code>convert -size 128x256 gradient: -rotate 90 linear_gradient_east.png
</code></pre>
<p>can be generate by either of the following (or by reversing the direction and swapping color1 and color2):</p>
<pre class="highlight"><code>convert -size 256x128 -define gradient:direction=east gradient:black-white linear_gradient_east.png
convert -size 256x128 -define gradient:angle=90 gradient:black-white linear_gradient_east.png
</code></pre>
<p><img src="../images/gradients/linear_gradient_east.png" width="256" height="128" /></p>
<p>Examples of radial gradients going from black in the center to white at the boundary for the cases of "maximum/circle/default", "minimum", "diagonal", "ellipse" and 45 degree rotated ellipse, respectively, follow below.</p>
<pre class="highlight"><code>convert -size 256x128 radial-gradient:black-white radial_gradient_maximum.png
convert -size 256x128 -define gradient:radii=128,128 radial-gradient:black-white radial_gradient_maximum.png
</code></pre>
<p><img src="../images/gradients/radial_gradient_maximum.png" width="256" height="128" /></p>
<pre class="highlight"><code>convert -size 256x128 -define gradient:extent=minimum radial-gradient:black-white radial_gradient_minimum.png
convert -size 256x128 -define gradient:radii=64,64 radial-gradient:black-white radial_gradient_minimum.png
</code></pre>
<p><img src="../images/gradients/radial_gradient_minimum.png" width="256" height="128" /></p>
<pre class="highlight"><code>convert -size 256x128 -define gradient:extent=diagonal radial-gradient:black-white radial_gradient_diagonal.png
</code></pre>
<p><img src="../images/gradients/radial_gradient_diagonal.png" width="256" height="128" /></p>
<pre class="highlight"><code>convert -size 256x128 -define gradient:extent=ellipse radial-gradient:black-white radial_gradient_ellipse.png
convert -size 256x128 -define gradient:radii=128,64 radial-gradient:black-white radial_gradient_ellipse.png
</code></pre>
<p><img src="../images/gradients/radial_gradient_ellipse.png" width="256" height="128" /></p>
<pre class="highlight"><code>convert -size 256x256 -define gradient:radii=128,64 -define gradient:angle=45 radial-gradient:black-white radial_gradient_ellipse_angle45.png
</code></pre>
<p><img src="../images/gradients/radial_gradient_ellipse_angle45.png" width="256" height="256" /></p>
</div>
</div>
</main><!-- /.container -->
<footer class="magick-footer">
<div class="container">
<p><a href="security-policy.html">Security</a>
<a href="news.html">News</a>
<a href="gradient.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="links.html">Related</a>
<a href="sitemap.html">Sitemap</a>
<br/>
<a href="support.html">Sponsor</a>
<a href="http://pgp.mit.edu/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a>
<a href="https://imagemagick.org/script/contact.php">Contact Us</a>
<br/>
<a href="https://github.com/imagemagick/imagemagick6" 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></p>
</div>
</footer>
<!-- Javascript assets -->
2023-02-03 21:24:11 +08:00
<script>window.jQuery || document.write('&lt;script src="assets/jquery.slim.min.js"&gt;&lt;\/script&gt;')</script><script src="assets/bootstrap.bundle.min.js" crossorigin="anonymous" />
2023-02-03 21:16:55 +08:00
</body>
</html>
2023-02-03 21:24:11 +08:00
<!-- Magick Cache 1st January 2021 19:38 -->