]> granicus.if.org Git - imagemagick/blob - www/api/constitute.html
(no commit message)
[imagemagick] / www / api / constitute.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\r
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">\r
4 <head>\r
5   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>\r
6   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U="/>\r
7   <title>ImageMagick: MagickCore, C API for ImageMagick: Constitute an Image</title/>
8   <meta http-equiv="Content-Language" content="en-US"/>
9   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
10   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
11   <meta name="Application-name" content="ImageMagick"/>
12   <meta name="Description" content="ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including GIF, JPEG, JPEG-2000, PNG, PDF, PhotoCD, TIFF, and DPX. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.  ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you can freely use, copy, modify, and distribute. Its license is compatible with the GPL. It runs on all major operating systems.  The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite programming language. Choose from these interfaces: MagickCore (C), MagickWand (C), ChMagick (Ch), Magick++ (C++), JMagick (Java), L-Magick (Lisp), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images automagically and dynamically."/>
13   <meta name="Application-url" content="http://www.imagemagick.org"/>
14   <meta name="Generator" content="PHP"/>
15   <meta name="Keywords" content="magickcore, c, api, for, imagemagick:, constitute, an, image, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
16   <meta name="Rating" content="GENERAL"/>
17   <meta name="Robots" content="INDEX, FOLLOW"/>
18   <meta name="Generator" content="ImageMagick Studio LLC"/>
19   <meta name="Author" content="ImageMagick Studio LLC"/>
20   <meta name="Revisit-after" content="2 DAYS"/>
21   <meta name="Resource-type" content="document"/>
22   <meta name="Copyright" content="Copyright (c) 1999-2010 ImageMagick Studio LLC"/>
23   <meta name="Distribution" content="Global"/>
24   <link rel="icon" href="../../images/wand.png"  sizes="32x32"/>
25   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/x-icon"/>
26   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>\r
27   <style type="text/css" media="all">\r
28     @import url("../../www/magick.css");\r
29   </style>\r
30 </head>\r
31 \r
32 <body id="www-imagemagick-org">\r
33 <div class="titlebar">\r
34 <a href="../../index.html">\r
35   <img src="../../images/script.png" alt="[ImageMagick]"\r
36   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>\r
37 <a href="http://www.networkredux.com">\r
38   <img src="../../images/networkredux.png" alt="[sponsor]"\r
39   style="margin: 45px auto; border: 0px; float: left;" /></a>\r
40 <a href="http://www.imagemagick.org/discourse-server/">\r
41   <img src="../../images/logo.jpg" alt=""\r
42   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
43 <a href="../../index.html">\r
44   <img src="../../images/sprite.jpg" alt=""\r
45   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
46 </div>\r
47 \r
48 <div class="westbar">\r
49 \r
50 <div class="menu">
51   <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
52 </div>
53 <div class="sep"></div>\r
54 <div class="menu">
55   <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
56 </div>
57 <div class="sub">
58     <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
59 </div>
60 <div class="sub">
61     <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
62 </div>
63 <div class="sub">
64     <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
65 </div>
66 <div class="sep"></div>\r
67 <div class="menu">
68   <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
69 </div>
70 <div class="sub">
71     <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
72 </div>
73 <div class="sub">
74     <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
75 </div>
76 <div class="sub">
77     <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
78 </div>
79 <div class="menu">
80   <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
81 </div>
82 <div class="sub">
83     <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
84 </div>
85 <div class="sub">
86     <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
87 </div>
88 <div class="sub">
89     <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
90 </div>
91 <div class="sub">
92     <a title="Program Interface: Magick++" href="../../Magick++/">Magick++</a>
93 </div>
94 <div class="sep"></div>\r
95 <div  class="menu">
96    <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
97 </div>
98 <div class="sub">
99     <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
100 </div>
101 <div class="sub">
102     <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
103  </div>
104 <div class="menu">
105   <a title="Resources" href="../../www/resources.html">Resources</a>
106 </div>
107 <div class="menu">
108   <a title="Architecture" href="../../www/architecture.html">Architecture</a>
109 </div>
110 <div class="menu">
111   <a title="Download" href="../../www/download.html">Download</a>
112 </div>
113 <div class="sep"></div>\r
114 <div class="menu">
115   <a title="Search" href="../http://www.imagemagick.org/script/search.php">Search</a>
116 </div>
117 <div class="sep"></div>\r
118 <div class="menu">
119   <a title="Site Map"href="../../www/sitemap.html">Site Map</a>
120 </div>
121 <div  class="sub">
122     <a title="Site Map: Links"href="../../www/links.html">Links</a>
123 </div>
124 <div class="sep"></div>\r
125 <div  class="menu">
126   <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
127
128 <div class="sponsbox">
129 <div  class="sponsor">
130    <a title="Sponsor: Notebook of repair" href="http://www.notebook-reparatur-berlin.de/">Notebook of Repair</a><!-- 2011030100025 -->
131 </div>
132 <div  class="sponsor">
133   <a title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
134 </div>
135 <div  class="sponsor">
136   <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
137 </div>
138 <div  class="sponsor">
139   <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
140 </div>
141 <div  class="sponsor">
142   <a title="Sponsor: Webdesign Agentur" href="http://www.ventzke-partner.de">Webdesign Agentur</a><!-- 201101010480 invendio.de-->
143 </div>
144 <div  class="sponsor">
145   <a title="Sponsor: LVM Versicherung" href="http://www.neu-reich.de">LVM Versicherung</a><!-- 201101010480 -->
146 </div>
147 <div  class="sponsor">
148   <a title="Sponsor: Diamonds are a Girls Best Friend" href="http://www.schmuck.org">Diamonds are a Girls Best Friend</a><!-- 201101010600 Peterssen-->
149 </div>
150 <div  class="sponsor">
151    <a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
152 </div>
153 </div>
154 </div>
155 </div>\r
156 \r
157 <div class="eastbar">\r
158   <script type="text/javascript">\r
159   <!--\r
160     google_ad_client = "pub-3129977114552745";\r
161     google_ad_slot = "0574824969";\r
162     google_ad_width = 160;\r
163     google_ad_height = 600;\r
164   //-->\r
165   </script>\r
166   <script type="text/javascript"\r
167     src="http://pagead2.googlesyndication.com/pagead/show_ads.js">\r
168   </script>\r
169 </div>\r
170 \r
171 <div class="main">\r
172 \r
173 <p class="navigation-index">[<a href="#ConstituteImage">ConstituteImage</a> &bull; <a href="#PingImage">PingImage</a> &bull; <a href="#PingImages">PingImages</a> &bull; <a href="#ReadImage">ReadImage</a> &bull; <a href="#ReadImages">ReadImages</a> &bull; <a href="#WriteImage">WriteImage</a> &bull; <a href="#WriteImages">WriteImages</a>]</p>
174
175 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute
176 _8c.html" target="source" name="ConstituteImage">ConstituteImage</a></h2>
177 <div class="doc-section">
178
179 <p>ConstituteImage() returns an image from the pixel data you supply. The pixel data must be in scanline order top-to-bottom.  The data can be char, short int, int, float, or double.  Float and double require the pixels to be normalized [0..1], otherwise [0..QuantumRange].  For example, to create a 640x480 image from unsigned red-green-blue character data, use:</p>
180
181 <pre class="text">
182   image = ConstituteImage(640,480,"RGB",CharPixel,pixels,&exception);
183 </pre>
184
185 <p>The format of the ConstituteImage method is:</p>
186
187 <pre class="code">
188   Image *ConstituteImage(const size_t columns,const size_t rows,
189     const char *map,const StorageType storage,const void *pixels,
190     ExceptionInfo *exception)
191 </pre>
192
193 <p>A description of each parameter follows:</p></ol>
194
195 <h5>columns</h5>
196 <ol><p>width in pixels of the image.</p></ol>
197
198 <h5>rows</h5>
199 <ol><p>height in pixels of the image.</p></ol>
200
201 <h5>map</h5>
202 <ol><p>This string reflects the expected ordering of the pixel array. It can be any combination or order of R = red, G = green, B = blue, A = alpha (0 is transparent), O = opacity (0 is opaque), C = cyan, Y = yellow, M = magenta, K = black, I = intensity (for grayscale), P = pad.</p></ol>
203
204 <h5>storage</h5>
205 <ol><p>Define the data type of the pixels.  Float and double types are expected to be normalized [0..1] otherwise [0..QuantumRange].  Choose from these types: CharPixel, DoublePixel, FloatPixel, IntegerPixel, LongPixel, QuantumPixel, or ShortPixel.</p></ol>
206
207 <h5>pixels</h5>
208 <ol><p>This array of values contain the pixel components as defined by map and type.  You must preallocate this array where the expected length varies depending on the values of width, height, map, and type.</p></ol>
209
210 <h5>exception</h5>
211 <ol><p>return any errors or warnings in this structure.</p></ol>
212
213  </div>
214 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute
215 _8c.html" target="source" name="PingImage">PingImage</a></h2>
216 <div class="doc-section">
217
218 <p>PingImage() returns all the properties of an image or image sequence except for the pixels.  It is much faster and consumes far less memory than ReadImage().  On failure, a NULL image is returned and exception describes the reason for the failure.</p></ol>
219
220 <p>The format of the PingImage method is:</p>
221
222 <pre class="code">
223   Image *PingImage(const ImageInfo *image_info,ExceptionInfo *exception)
224 </pre>
225
226 <p>A description of each parameter follows:</p></ol>
227
228 <h5>image_info</h5>
229 <ol><p>Ping the image defined by the file or filename members of this structure.</p></ol>
230
231 <h5>exception</h5>
232 <ol><p>return any errors or warnings in this structure.</p></ol>
233
234  </div>
235 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute
236 _8c.html" target="source" name="PingImages">PingImages</a></h2>
237 <div class="doc-section">
238
239 <p>PingImages() pings one or more images and returns them as an image list.</p></ol>
240
241 <p>The format of the PingImage method is:</p>
242
243 <pre class="code">
244   Image *PingImages(const ImageInfo *image_info,ExceptionInfo *exception)
245 </pre>
246
247 <p>A description of each parameter follows:</p></ol>
248
249 <h5>image_info</h5>
250 <ol><p>the image info.</p></ol>
251
252 <h5>exception</h5>
253 <ol><p>return any errors or warnings in this structure.</p></ol>
254
255  </div>
256 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute
257 _8c.html" target="source" name="ReadImage">ReadImage</a></h2>
258 <div class="doc-section">
259
260 <p>ReadImage() reads an image or image sequence from a file or file handle. The method returns a NULL if there is a memory shortage or if the image cannot be read.  On failure, a NULL image is returned and exception describes the reason for the failure.</p></ol>
261
262 <p>The format of the ReadImage method is:</p>
263
264 <pre class="code">
265   Image *ReadImage(const ImageInfo *image_info,ExceptionInfo *exception)
266 </pre>
267
268 <p>A description of each parameter follows:</p></ol>
269
270 <h5>image_info</h5>
271 <ol><p>Read the image defined by the file or filename members of this structure.</p></ol>
272
273 <h5>exception</h5>
274 <ol><p>return any errors or warnings in this structure.</p></ol>
275
276  </div>
277 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute
278 _8c.html" target="source" name="ReadImages">ReadImages</a></h2>
279 <div class="doc-section">
280
281 <p>ReadImages() reads one or more images and returns them as an image list.</p></ol>
282
283 <p>The format of the ReadImage method is:</p>
284
285 <pre class="code">
286   Image *ReadImages(const ImageInfo *image_info,ExceptionInfo *exception)
287 </pre>
288
289 <p>A description of each parameter follows:</p></ol>
290
291 <h5>image_info</h5>
292 <ol><p>the image info.</p></ol>
293
294 <h5>exception</h5>
295 <ol><p>return any errors or warnings in this structure.</p></ol>
296
297  </div>
298 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute
299 _8c.html" target="source" name="WriteImage">WriteImage</a></h2>
300 <div class="doc-section">
301
302 <p>WriteImage() writes an image or an image sequence to a file or filehandle. If writing to a file on disk, the name is defined by the filename member of the image structure.  Write() returns MagickFalse is these is a memory shortage or if the image cannot be written.  Check the exception member of image to determine the cause for any failure.</p></ol>
303
304 <p>The format of the WriteImage method is:</p>
305
306 <pre class="code">
307   MagickBooleanType WriteImage(const ImageInfo *image_info,Image *image)
308 </pre>
309
310 <p>A description of each parameter follows:</p></ol>
311
312 <h5>image_info</h5>
313 <ol><p>the image info.</p></ol>
314
315 <h5>image</h5>
316 <ol><p>the image.</p></ol>
317
318  </div>
319 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute
320 _8c.html" target="source" name="WriteImages">WriteImages</a></h2>
321 <div class="doc-section">
322
323 <p>WriteImages() writes an image sequence.</p></ol>
324
325 <p>The format of the WriteImages method is:</p>
326
327 <pre class="code">
328   MagickBooleanType WriteImages(const ImageInfo *image_info,Image *images,
329     const char *filename,ExceptionInfo *exception)
330 </pre>
331
332 <p>A description of each parameter follows:</p></ol>
333
334 <h5>image_info</h5>
335 <ol><p>the image info.</p></ol>
336
337 <h5>images</h5>
338 <ol><p>the image list.</p></ol>
339
340 <h5>filename</h5>
341 <ol><p>the image filename.</p></ol>
342
343 <h5>exception</h5>
344 <ol><p>return any errors or warnings in this structure.</p></ol>
345
346  </div>
347 \r
348 </div>\r
349 \r
350 <div id="linkbar">\r
351     <span id="linkbar-west">&nbsp;</span>\r
352     <span id="linkbar-center">\r
353       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
354       <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
355     </span>\r
356     <span id="linkbar-east">&nbsp;</span>\r
357   </div>\r
358   <div class="footer">\r
359     <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>\r
360     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
361   </div>\r
362   <div style="clear: both; margin: 0; width: 100%; "></div>\r
363   <script type="text/javascript">\r
364     var _gaq = _gaq || [];\r
365     _gaq.push(['_setAccount', 'UA-17690367-1']);\r
366     _gaq.push(['_trackPageview']);\r
367 \r
368     (function() {\r
369       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\r
370       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r
371       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\r
372     })();\r
373   </script>\r
374 </body>\r
375 </html>\r