]> 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 xmlns="http://www.w3.org/1999/xhtml" xml: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, compose, or convert bitmap images in a variety of formats. Use ImageMagick to scale, rotate, shear, distort and transform images."/>
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-2011 ImageMagick Studio LLC"/>
23   <meta name="Distribution" content="Global"/>
24   <link rel="icon" href="../../images/wand.png"/>
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   <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />\r
28   <style type="text/css" media="all">\r
29     @import url("../../www/magick.css");\r
30   </style>\r
31   <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>\r
32   <script type="text/javascript" src="../fancybox/jquery.fancybox-1.3.4.pack.js"></script>\r
33   <link rel="stylesheet" type="text/css" href="../fancybox/jquery.fancybox-1.3.4.css" media="screen" />\r
34   <script type="text/javascript">\r
35     $(document).ready(function() {\r
36       $("a[href$=.jpg],a[href$=.png],a[href$=.gif]").fancybox({\r
37         'transitionIn'  : 'elastic',\r
38         'transitionOut' : 'elastic',\r
39         'overlayShow'   : false,\r
40         'opacity'       : true\r
41       });\r
42     });\r
43   </script>\r
44 </head>\r
45 \r
46 <body id="www-imagemagick-org">\r
47 <div class="titlebar">\r
48 <a href="../../index.html">\r
49   <img src="../../images/script.png" alt="[ImageMagick]"\r
50   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>\r
51 <a href="http://www.networkredux.com">\r
52   <img src="../../images/networkredux.png" alt="[sponsor]"\r
53   style="margin-top: 42px; border: 0px; float: left;" /></a>\r
54 <a href="http://www.imagemagick.org/discourse-server/">\r
55   <img src="../../images/logo.jpg" alt=""\r
56   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
57 <a href="../../index.html">\r
58   <img src="../../images/sprite.jpg" alt=""\r
59   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
60 </div>\r
61 \r
62 <div class="westbar">\r
63 \r
64 <div class="menu">
65   <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
66 </div>
67 <div class="sep"></div>\r
68 <div class="menu">
69   <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
70 </div>
71 <div class="sub">
72     <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
73 </div>
74 <div class="sub">
75     <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
76 </div>
77 <div class="sub">
78     <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
79 </div>
80 <div class="sep"></div>\r
81 <div class="menu">
82   <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
83 </div>
84 <div class="sub">
85     <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
86 </div>
87 <div class="sub">
88     <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
89 </div>
90 <div class="sub">
91     <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
92 </div>
93 <div class="menu">
94   <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
95 </div>
96 <div class="sub">
97     <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
98 </div>
99 <div class="sub">
100     <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
101 </div>
102 <div class="sub">
103     <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
104 </div>
105 <div class="sub">
106     <a title="Program Interface: Magick++" href="../../www/magick++.html">Magick++</a>
107 </div>
108 <div class="sep"></div>\r
109 <div  class="menu">
110    <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
111 </div>
112 <div class="sub">
113     <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
114 </div>
115 <div class="sub">
116     <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
117  </div>
118 <div class="menu">
119   <a title="Resources" href="../../www/resources.html">Resources</a>
120 </div>
121 <div class="menu">
122   <a title="Architecture" href="../../www/architecture.html">Architecture</a>
123 </div>
124 <div class="menu">
125   <a title="Download" href="../../www/download.html">Download</a>
126 </div>
127 <div class="sep"></div>\r
128 <div class="menu">
129   <a title="Search" href="../../www/search.html">Search</a>
130 </div>
131 <div class="sep"></div>\r
132 <div class="menu">
133   <a title="Site Map" href="../../www/sitemap.html">Site Map</a>
134 </div>
135 <div  class="sub">
136   <a title="Site Map: Links" href="../../www/links.html">Links</a>
137 </div>
138 <div class="sep"></div>\r
139 <div  class="menu">
140   <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
141
142 <div class="sponsbox">
143 <div class="sponsor">
144   <a title="Sponsor: Web Hosting" href="http://www.bodhost.com/hosting.shtml">Web Hosting</a><!-- 201104010090 -->
145 </div>
146 <div  class="sponsor">
147   <a title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
148 </div>
149 <div  class="sponsor">
150   <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
151 </div>
152 <div  class="sponsor">
153   <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
154 </div>
155 <div  class="sponsor">
156    <a title="Sponsor: Free Catalogs" href="http://www.who-sells-it.com/">Free Catalogs</a><!-- 20120801000600 -->
157 </div>
158 </div>
159 </div>
160 </div>\r
161 \r
162 <div class="eastbar">\r
163   <script type="text/javascript">\r
164   <!--\r
165     google_ad_client = "pub-3129977114552745";\r
166     google_ad_slot = "0574824969";\r
167     google_ad_width = 160;\r
168     google_ad_height = 600;\r
169   //-->\r
170   </script>\r
171   <script type="text/javascript"\r
172     src="http://pagead2.googlesyndication.com/pagead/show_ads.js">\r
173   </script>\r
174 </div>\r
175 \r
176 <div class="main">\r
177 \r
178 <h1>Module constitute
179  Methods</h1>
180 <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>
181
182 <h2><a href="http://www.wizards-toolkit.org/api/MagickCore/constitute
183 _8c.html" id="ConstituteImage">ConstituteImage</a></h2>
184 <div class="doc-section">
185
186 <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>
187
188 <pre class="text">
189   image = ConstituteImage(640,480,"RGB",CharPixel,pixels,&exception);
190 </pre>
191
192 <p>The format of the ConstituteImage method is:</p>
193
194 <pre class="code">
195   Image *ConstituteImage(const size_t columns,const size_t rows,
196     const char *map,const StorageType storage,const void *pixels,
197     ExceptionInfo *exception)
198 </pre>
199
200 <p>A description of each parameter follows:</p>
201
202 <h5>columns</h5>
203 <p>width in pixels of the image.</p>
204
205 <h5>rows</h5>
206 <p>height in pixels of the image.</p>
207
208 <h5>map</h5>
209 <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>
210
211 <h5>storage</h5>
212 <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>
213
214 <h5>pixels</h5>
215 <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>
216
217 <h5>exception</h5>
218 <p>return any errors or warnings in this structure.</p>
219
220  </div>
221 <h2><a href="http://www.wizards-toolkit.org/api/MagickCore/constitute
222 _8c.html" id="PingImage">PingImage</a></h2>
223 <div class="doc-section">
224
225 <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>
226
227 <p>The format of the PingImage method is:</p>
228
229 <pre class="code">
230   Image *PingImage(const ImageInfo *image_info,ExceptionInfo *exception)
231 </pre>
232
233 <p>A description of each parameter follows:</p>
234
235 <h5>image_info</h5>
236 <p>Ping the image defined by the file or filename members of this structure.</p>
237
238 <h5>exception</h5>
239 <p>return any errors or warnings in this structure.</p>
240
241  </div>
242 <h2><a href="http://www.wizards-toolkit.org/api/MagickCore/constitute
243 _8c.html" id="PingImages">PingImages</a></h2>
244 <div class="doc-section">
245
246 <p>PingImages() pings one or more images and returns them as an image list.</p>
247
248 <p>The format of the PingImage method is:</p>
249
250 <pre class="code">
251   Image *PingImages(const ImageInfo *image_info,ExceptionInfo *exception)
252 </pre>
253
254 <p>A description of each parameter follows:</p>
255
256 <h5>image_info</h5>
257 <p>the image info.</p>
258
259 <h5>exception</h5>
260 <p>return any errors or warnings in this structure.</p>
261
262  </div>
263 <h2><a href="http://www.wizards-toolkit.org/api/MagickCore/constitute
264 _8c.html" id="ReadImage">ReadImage</a></h2>
265 <div class="doc-section">
266
267 <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>
268
269 <p>The format of the ReadImage method is:</p>
270
271 <pre class="code">
272   Image *ReadImage(const ImageInfo *image_info,ExceptionInfo *exception)
273 </pre>
274
275 <p>A description of each parameter follows:</p>
276
277 <h5>image_info</h5>
278 <p>Read the image defined by the file or filename members of this structure.</p>
279
280 <h5>exception</h5>
281 <p>return any errors or warnings in this structure.</p>
282
283  </div>
284 <h2><a href="http://www.wizards-toolkit.org/api/MagickCore/constitute
285 _8c.html" id="ReadImages">ReadImages</a></h2>
286 <div class="doc-section">
287
288 <p>ReadImages() reads one or more images and returns them as an image list.</p>
289
290 <p>The format of the ReadImage method is:</p>
291
292 <pre class="code">
293   Image *ReadImages(const ImageInfo *image_info,ExceptionInfo *exception)
294 </pre>
295
296 <p>A description of each parameter follows:</p>
297
298 <h5>image_info</h5>
299 <p>the image info.</p>
300
301 <h5>exception</h5>
302 <p>return any errors or warnings in this structure.</p>
303
304  </div>
305 <h2><a href="http://www.wizards-toolkit.org/api/MagickCore/constitute
306 _8c.html" id="WriteImage">WriteImage</a></h2>
307 <div class="doc-section">
308
309 <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>
310
311 <p>The format of the WriteImage method is:</p>
312
313 <pre class="code">
314   MagickBooleanType WriteImage(const ImageInfo *image_info,Image *image)
315 </pre>
316
317 <p>A description of each parameter follows:</p>
318
319 <h5>image_info</h5>
320 <p>the image info.</p>
321
322 <h5>image</h5>
323 <p>the image.</p>
324
325  </div>
326 <h2><a href="http://www.wizards-toolkit.org/api/MagickCore/constitute
327 _8c.html" id="WriteImages">WriteImages</a></h2>
328 <div class="doc-section">
329
330 <p>WriteImages() writes an image sequence.</p>
331
332 <p>The format of the WriteImages method is:</p>
333
334 <pre class="code">
335   MagickBooleanType WriteImages(const ImageInfo *image_info,Image *images,
336     const char *filename,ExceptionInfo *exception)
337 </pre>
338
339 <p>A description of each parameter follows:</p>
340
341 <h5>image_info</h5>
342 <p>the image info.</p>
343
344 <h5>images</h5>
345 <p>the image list.</p>
346
347 <h5>filename</h5>
348 <p>the image filename.</p>
349
350 <h5>exception</h5>
351 <p>return any errors or warnings in this structure.</p>
352
353  </div>
354 \r
355 </div>\r
356 \r
357 <div id="linkbar">\r
358     <span id="linkbar-west">&nbsp;</span>\r
359     <span id="linkbar-center">\r
360       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
361       <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
362     </span>\r
363     <span id="linkbar-east">&nbsp;</span>\r
364   </div>\r
365   <div class="footer">\r
366     <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>\r
367     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
368   </div>\r
369   <div style="clear: both; margin: 0; width: 100%; "></div>\r
370   <script type="text/javascript">\r
371     var _gaq = _gaq || [];\r
372     _gaq.push(['_setAccount', 'UA-17690367-1']);\r
373     _gaq.push(['_trackPageview']);\r
374 \r
375     (function() {\r
376       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\r
377       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r
378       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\r
379     })();\r
380   </script>\r
381 </body>\r
382 </html>\r