]> 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.1//EN" \r
2   "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
3 <html version="-//W3C//DTD XHTML 1.1//EN"\r
4       xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"\r
5       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
6       xsi:schemaLocation="http://www.w3.org/1999/xhtml\r
7                           http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd">\r
8 <head>\r
9   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>\r
10   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U="/>\r
11   <title>ImageMagick: MagickCore, C API for ImageMagick: Constitute an Image</title>
12   <meta http-equiv="Content-Language" content="en-US"/>
13   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
14   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
15   <meta name="Application-name" content="ImageMagick"/>
16   <meta name="Description" content="Use ImageMagick to convert, edit, or compose bitmap images in a variety of formats.  In addition resize, rotate, shear, distort and transform images."/>
17   <meta name="Application-url" content="http://www.imagemagick.org"/>
18   <meta name="Generator" content="PHP"/>
19   <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"/>
20   <meta name="Rating" content="GENERAL"/>
21   <meta name="Robots" content="INDEX, FOLLOW"/>
22   <meta name="Generator" content="ImageMagick Studio LLC"/>
23   <meta name="Author" content="ImageMagick Studio LLC"/>
24   <meta name="Revisit-after" content="2 DAYS"/>
25   <meta name="Resource-type" content="document"/>
26   <meta name="Copyright" content="Copyright (c) 1999-2011 ImageMagick Studio LLC"/>
27   <meta name="Distribution" content="Global"/>
28   <link rel="icon" href="../../images/wand.png"/>
29   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/x-icon"/>
30   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>\r
31   <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />\r
32   <style type="text/css" media="all">\r
33     @import url("../../www/magick.css");\r
34   </style>\r
35   <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>\r
36   <script type="text/javascript" src="../fancybox/jquery.fancybox-1.3.4.pack.js"></script>\r
37   <link rel="stylesheet" type="text/css" href="../fancybox/jquery.fancybox-1.3.4.css" media="screen" />\r
38   <script type="text/javascript">\r
39     $(document).ready(function() {\r
40       $("a[href$=.jpg],a[href$=.png],a[href$=.gif]").fancybox({\r
41         'transitionIn'  : 'elastic',\r
42         'transitionOut' : 'elastic',\r
43         'overlayShow'   : false,\r
44         'opacity'       : true\r
45       });\r
46     });\r
47   </script>\r
48 </head>\r
49 \r
50 <body id="www-imagemagick-org">\r
51 <div class="titlebar">\r
52 <div style="margin: 17px auto; float: left;">\r
53   <script type="text/javascript">\r
54   <!--\r
55     google_ad_client = "pub-3129977114552745";\r
56     google_ad_slot = "5439289906";\r
57     google_ad_width = 728;\r
58     google_ad_height = 90;\r
59   //-->\r
60   </script>\r
61   <script type="text/javascript"\r
62     src="http://pagead2.googlesyndication.com/pagead/show_ads.js">\r
63   </script>\r
64 </div>\r
65 <a href="http://www.imagemagick.org/discourse-server/">\r
66   <img src="../../images/logo.jpg"\r
67   alt="ImageMagick Logo"\r
68   style="width: 123px; height: 118px; border: 0px; float: right;" /></a>\r
69 <a href="../../index.html">\r
70   <img src="../../images/sprite.jpg"\r
71   alt="ImageMagick Sprite"\r
72   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
73 </div>\r
74 \r
75 <div class="westbar">\r
76 \r
77 <div class="menu">
78   <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
79 </div>
80 <div class="sep"></div>\r
81 <div class="menu">
82   <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
83 </div>
84 <div class="sub">
85     <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
86 </div>
87 <div class="sub">
88     <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
89 </div>
90 <div class="sub">
91     <a title="Binary Release: iPhone" href="../../www/binary-releases.html#iPhone">iPhone</a>
92 </div>
93 <div class="sub">
94     <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
95 </div>
96 <div class="sep"></div>\r
97 <div class="menu">
98   <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
99 </div>
100 <div class="sub">
101     <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
102 </div>
103 <div class="sub">
104     <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
105 </div>
106 <div class="sub">
107     <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
108 </div>
109 <div class="menu">
110   <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
111 </div>
112 <div class="sub">
113     <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
114 </div>
115 <div class="sub">
116     <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
117 </div>
118 <div class="sub">
119     <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
120 </div>
121 <div class="sub">
122     <a title="Program Interface: Magick++" href="../../www/magick++.html">Magick++</a>
123 </div>
124 <div class="sep"></div>\r
125 <div  class="menu">
126    <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
127 </div>
128 <div class="sub">
129     <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
130 </div>
131 <div class="sub">
132     <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
133  </div>
134 <div class="menu">
135   <a title="Resources" href="../../www/resources.html">Resources</a>
136 </div>
137 <div class="menu">
138   <a title="Architecture" href="../../www/architecture.html">Architecture</a>
139 </div>
140 <div class="menu">
141   <a title="Download" href="../../www/download.html">Download</a>
142 </div>
143 <div class="sep"></div>\r
144 <div class="menu">
145   <a title="Search" href="../../www/search.html">Search</a>
146 </div>
147 <div class="sep"></div>\r
148 <div class="menu">
149   <a title="Site Map" href="../../www/sitemap.html">Site Map</a>
150 </div>
151 <div  class="sub">
152   <a title="Site Map: Links" href="../../www/links.html">Links</a>
153 </div>
154 <div class="sep"></div>\r
155 <div  class="menu">
156   <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
157
158 <a href="http://www.networkredux.com">
159   <img src="../../images/networkredux.png" alt="[sponsor]"
160   style="margin-top: 4px; margin-left: 4px; border: 0px; float: left;" /></a>
161 <div class="sponsbox">
162 <div  class="sponsor">
163   <a title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201303011500 r.leo -->
164 </div>
165 <div  class="sponsor">
166   <a title="Sponsor: Hotel München" href="http://www.messehotel-erb-muenchen.de">Hotel München</a><!-- 201111010450 cerb -->
167 </div>
168 <div  class="sponsor">
169   <a title="Sponsor: Website Hosting" href="http://www.hostreviewgeeks.com">Website Hosting</a><!-- 201106010090 alexanian media -->
170 </div>
171 <div  class="sponsor">
172   <a title="Sponsor: Best Web Hosting" href="http://webhostinggeeks.com">Best Web Hosting</a><!-- 201110010720 -->
173 </div>
174 <div  class="sponsor">
175   <a title="Sponsor: Web Hosting Ratings" href="http://webhostingrating.com">Web Hosting Ratings</a><!-- 201110010720 -->
176 </div>
177 <div  class="sponsor">
178   <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
179 </div>
180 <div class="sponsor">
181   <a title="Sponsor: Web Hosting" href="http://www.bodhost.com/hosting.shtml">Web Hosting</a><!-- 201104010090 -->
182 </div>
183 <div  class="sponsor">
184   <a title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
185 </div>
186 <div  class="sponsor">
187    <a title="Sponsor: Fototapete" href=" http://www.allesdruck.de/Fototapete-Tapetendruck,category,8830.html">Fototapete</a><!-- 20110701000080 a-o.de -->
188 </div>
189 </div>
190 </div>
191 </div>\r
192 \r
193 <div class="eastbar">\r
194 \r
195 </div>\r
196 \r
197 <div class="main">\r
198 \r
199 <h1>Module constitute Methods</h1>
200 <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>
201
202 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute_8c.html" id="ConstituteImage">ConstituteImage</a></h2>
203 <div class="doc-section">
204
205 <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>
206
207 <pre class="text">
208   image = ConstituteImage(640,480,"RGB",CharPixel,pixels,&exception);
209 </pre>
210
211 <p>The format of the ConstituteImage method is:</p>
212
213 <pre class="code">
214   Image *ConstituteImage(const size_t columns,const size_t rows,
215     const char *map,const StorageType storage,const void *pixels,
216     ExceptionInfo *exception)
217 </pre>
218
219 <p>A description of each parameter follows:</p>
220
221 <h5>columns</h5>
222 <p>width in pixels of the image.</p>
223
224 <h5>rows</h5>
225 <p>height in pixels of the image.</p>
226
227 <h5>map</h5>
228 <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>
229
230 <h5>storage</h5>
231 <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>
232
233 <h5>pixels</h5>
234 <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>
235
236 <h5>exception</h5>
237 <p>return any errors or warnings in this structure.</p>
238
239  </div>
240 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute_8c.html" id="PingImage">PingImage</a></h2>
241 <div class="doc-section">
242
243 <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>
244
245 <p>The format of the PingImage method is:</p>
246
247 <pre class="code">
248   Image *PingImage(const ImageInfo *image_info,ExceptionInfo *exception)
249 </pre>
250
251 <p>A description of each parameter follows:</p>
252
253 <h5>image_info</h5>
254 <p>Ping the image defined by the file or filename members of this structure.</p>
255
256 <h5>exception</h5>
257 <p>return any errors or warnings in this structure.</p>
258
259  </div>
260 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute_8c.html" id="PingImages">PingImages</a></h2>
261 <div class="doc-section">
262
263 <p>PingImages() pings one or more images and returns them as an image list.</p>
264
265 <p>The format of the PingImage method is:</p>
266
267 <pre class="code">
268   Image *PingImages(const ImageInfo *image_info,ExceptionInfo *exception)
269 </pre>
270
271 <p>A description of each parameter follows:</p>
272
273 <h5>image_info</h5>
274 <p>the image info.</p>
275
276 <h5>exception</h5>
277 <p>return any errors or warnings in this structure.</p>
278
279  </div>
280 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute_8c.html" id="ReadImage">ReadImage</a></h2>
281 <div class="doc-section">
282
283 <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>
284
285 <p>The format of the ReadImage method is:</p>
286
287 <pre class="code">
288   Image *ReadImage(const ImageInfo *image_info,ExceptionInfo *exception)
289 </pre>
290
291 <p>A description of each parameter follows:</p>
292
293 <h5>image_info</h5>
294 <p>Read the image defined by the file or filename members of this structure.</p>
295
296 <h5>exception</h5>
297 <p>return any errors or warnings in this structure.</p>
298
299  </div>
300 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute_8c.html" id="ReadImages">ReadImages</a></h2>
301 <div class="doc-section">
302
303 <p>ReadImages() reads one or more images and returns them as an image list.</p>
304
305 <p>The format of the ReadImage method is:</p>
306
307 <pre class="code">
308   Image *ReadImages(const ImageInfo *image_info,ExceptionInfo *exception)
309 </pre>
310
311 <p>A description of each parameter follows:</p>
312
313 <h5>image_info</h5>
314 <p>the image info.</p>
315
316 <h5>exception</h5>
317 <p>return any errors or warnings in this structure.</p>
318
319  </div>
320 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute_8c.html" id="WriteImage">WriteImage</a></h2>
321 <div class="doc-section">
322
323 <p>WriteImage() writes an image or an image sequence to a file or file handle. If writing to a file is on disk, the name is defined by the filename member of the image structure.  WriteImage() returns MagickFalse is there 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>
324
325 <p>The format of the WriteImage method is:</p>
326
327 <pre class="code">
328   MagickBooleanType WriteImage(const ImageInfo *image_info,Image *image)
329 </pre>
330
331 <p>A description of each parameter follows:</p>
332
333 <h5>image_info</h5>
334 <p>the image info.</p>
335
336 <h5>image</h5>
337 <p>the image.</p>
338
339  </div>
340 <h2><a href="http://www.imagemagick.org/api/MagickCore/constitute_8c.html" id="WriteImages">WriteImages</a></h2>
341 <div class="doc-section">
342
343 <p>WriteImages() writes an image sequence into one or more files.  While WriteImage() can write an image sequence, it is limited to writing the sequence into a single file using a format which supports multiple frames.   WriteImages(), however, does not have this limitation, instead it generates multiple output files if necessary (or when requested).  When ImageInfo's adjoin flag is set to MagickFalse, the file name is expected to include a printf-style formatting string for the frame number (e.g. "image02d.png").</p>
344
345 <p>The format of the WriteImages method is:</p>
346
347 <pre class="code">
348   MagickBooleanType WriteImages(const ImageInfo *image_info,Image *images,
349     const char *filename,ExceptionInfo *exception)
350 </pre>
351
352 <p>A description of each parameter follows:</p>
353
354 <h5>image_info</h5>
355 <p>the image info.</p>
356
357 <h5>images</h5>
358 <p>the image list.</p>
359
360 <h5>filename</h5>
361 <p>the image filename.</p>
362
363 <h5>exception</h5>
364 <p>return any errors or warnings in this structure.</p>
365
366  </div>
367 \r
368 </div>\r
369 \r
370 <div id="linkbar">\r
371     <span id="linkbar-west">&nbsp;</span>\r
372     <span id="linkbar-center">\r
373       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
374       <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
375     </span>\r
376     <span id="linkbar-east">&nbsp;</span>\r
377   </div>\r
378   <div class="footer">\r
379     <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>\r
380     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
381   </div>\r
382   <div style="clear: both; margin: 0; width: 100%; "></div>\r
383   <script type="text/javascript">\r
384     var _gaq = _gaq || [];\r
385     _gaq.push(['_setAccount', 'UA-17690367-1']);\r
386     _gaq.push(['_trackPageview']);\r
387 \r
388     (function() {\r
389       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\r
390       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r
391       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\r
392     })();\r
393   </script>\r
394 </body>\r
395 </html>\r