Imported Upstream version 3.0.1
[platform/upstream/libjpeg-turbo.git] / java / doc / org / libjpegturbo / turbojpeg / TJTransformer.html
1 <!DOCTYPE HTML>
2 <!-- NewPage -->
3 <html lang="en">
4 <head>
5 <!-- Generated by javadoc -->
6 <title>TJTransformer</title>
7 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
8 <link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
9 <link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.min.css" title="Style">
10 <link rel="stylesheet" type="text/css" href="../../../jquery-ui.overrides.css" title="Style">
11 <script type="text/javascript" src="../../../script.js"></script>
12 <script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
13 <script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
14 <!--[if IE]>
15 <script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
16 <![endif]-->
17 <script type="text/javascript" src="../../../jquery/jquery-3.6.0.min.js"></script>
18 <script type="text/javascript" src="../../../jquery/jquery-ui.min.js"></script>
19 </head>
20 <body>
21 <script type="text/javascript"><!--
22     try {
23         if (location.href.indexOf('is-external=true') == -1) {
24             parent.document.title="TJTransformer";
25         }
26     }
27     catch(err) {
28     }
29 //-->
30 var data = {"i0":10,"i1":10,"i2":42,"i3":10,"i4":42};
31 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
32 var altColor = "altColor";
33 var rowColor = "rowColor";
34 var tableTab = "tableTab";
35 var activeTableTab = "activeTableTab";
36 var pathtoroot = "../../../";
37 var useModuleDirectories = true;
38 loadScripts(document, 'script');</script>
39 <noscript>
40 <div>JavaScript is disabled on your browser.</div>
41 </noscript>
42 <header role="banner">
43 <nav role="navigation">
44 <div class="fixedNav">
45 <!-- ========= START OF TOP NAVBAR ======= -->
46 <div class="topNav"><a id="navbar.top">
47 <!--   -->
48 </a>
49 <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
50 <a id="navbar.top.firstrow">
51 <!--   -->
52 </a>
53 <ul class="navList" title="Navigation">
54 <li><a href="package-summary.html">Package</a></li>
55 <li class="navBarCell1Rev">Class</li>
56 <li><a href="package-tree.html">Tree</a></li>
57 <li><a href="../../../deprecated-list.html">Deprecated</a></li>
58 <li><a href="../../../index-all.html">Index</a></li>
59 <li><a href="../../../help-doc.html">Help</a></li>
60 </ul>
61 </div>
62 <div class="subNav">
63 <ul class="navList" id="allclasses_navbar_top">
64 <li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
65 </ul>
66 <ul class="navListSearch">
67 <li><label for="search">SEARCH:</label>
68 <input type="text" id="search" value="search" disabled="disabled">
69 <input type="reset" id="reset" value="reset" disabled="disabled">
70 </li>
71 </ul>
72 <div>
73 <script type="text/javascript"><!--
74   allClassesLink = document.getElementById("allclasses_navbar_top");
75   if(window==top) {
76     allClassesLink.style.display = "block";
77   }
78   else {
79     allClassesLink.style.display = "none";
80   }
81   //-->
82 </script>
83 <noscript>
84 <div>JavaScript is disabled on your browser.</div>
85 </noscript>
86 </div>
87 <div>
88 <ul class="subNavList">
89 <li>Summary:&nbsp;</li>
90 <li>Nested&nbsp;|&nbsp;</li>
91 <li>Field&nbsp;|&nbsp;</li>
92 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
93 <li><a href="#method.summary">Method</a></li>
94 </ul>
95 <ul class="subNavList">
96 <li>Detail:&nbsp;</li>
97 <li>Field&nbsp;|&nbsp;</li>
98 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
99 <li><a href="#method.detail">Method</a></li>
100 </ul>
101 </div>
102 <a id="skip.navbar.top">
103 <!--   -->
104 </a></div>
105 <!-- ========= END OF TOP NAVBAR ========= -->
106 </div>
107 <div class="navPadding">&nbsp;</div>
108 <script type="text/javascript"><!--
109 $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
110 //-->
111 </script>
112 </nav>
113 </header>
114 <!-- ======== START OF CLASS DATA ======== -->
115 <main role="main">
116 <div class="header">
117 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.libjpegturbo.turbojpeg</a></div>
118 <h2 title="Class TJTransformer" class="title">Class TJTransformer</h2>
119 </div>
120 <div class="contentContainer">
121 <ul class="inheritance">
122 <li>java.lang.Object</li>
123 <li>
124 <ul class="inheritance">
125 <li><a href="TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg">org.libjpegturbo.turbojpeg.TJDecompressor</a></li>
126 <li>
127 <ul class="inheritance">
128 <li>org.libjpegturbo.turbojpeg.TJTransformer</li>
129 </ul>
130 </li>
131 </ul>
132 </li>
133 </ul>
134 <div class="description">
135 <ul class="blockList">
136 <li class="blockList">
137 <dl>
138 <dt>All Implemented Interfaces:</dt>
139 <dd><code>java.io.Closeable</code>, <code>java.lang.AutoCloseable</code></dd>
140 </dl>
141 <hr>
142 <pre>public class <span class="typeNameLabel">TJTransformer</span>
143 extends <a href="TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg">TJDecompressor</a></pre>
144 <div class="block">TurboJPEG lossless transformer</div>
145 </li>
146 </ul>
147 </div>
148 <div class="summary">
149 <ul class="blockList">
150 <li class="blockList">
151 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
152 <section>
153 <ul class="blockList">
154 <li class="blockList"><a id="constructor.summary">
155 <!--   -->
156 </a>
157 <h3>Constructor Summary</h3>
158 <table class="memberSummary">
159 <caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
160 <tr>
161 <th class="colFirst" scope="col">Constructor</th>
162 <th class="colLast" scope="col">Description</th>
163 </tr>
164 <tr class="altColor">
165 <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">TJTransformer</a></span>()</code></th>
166 <td class="colLast">
167 <div class="block">Create a TurboJPEG lossless transformer instance.</div>
168 </td>
169 </tr>
170 <tr class="rowColor">
171 <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D)">TJTransformer</a></span>&#8203;(byte[]&nbsp;jpegImage)</code></th>
172 <td class="colLast">
173 <div class="block">Create a TurboJPEG lossless transformer instance and associate the JPEG
174  source image stored in <code>jpegImage</code> with the newly created
175  instance.</div>
176 </td>
177 </tr>
178 <tr class="altColor">
179 <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int)">TJTransformer</a></span>&#8203;(byte[]&nbsp;jpegImage,
180              int&nbsp;imageSize)</code></th>
181 <td class="colLast">
182 <div class="block">Create a TurboJPEG lossless transformer instance and associate the JPEG
183  source image of length <code>imageSize</code> bytes stored in
184  <code>jpegImage</code> with the newly created instance.</div>
185 </td>
186 </tr>
187 </table>
188 </li>
189 </ul>
190 </section>
191 <!-- ========== METHOD SUMMARY =========== -->
192 <section>
193 <ul class="blockList">
194 <li class="blockList"><a id="method.summary">
195 <!--   -->
196 </a>
197 <h3>Method Summary</h3>
198 <table class="memberSummary">
199 <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
200 <tr>
201 <th class="colFirst" scope="col">Modifier and Type</th>
202 <th class="colSecond" scope="col">Method</th>
203 <th class="colLast" scope="col">Description</th>
204 </tr>
205 <tr id="i0" class="altColor">
206 <td class="colFirst"><code>int[]</code></td>
207 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTransformedSizes()">getTransformedSizes</a></span>()</code></th>
208 <td class="colLast">
209 <div class="block">Returns an array containing the sizes of the transformed JPEG images
210  (in bytes) generated by the most recent transform operation.</div>
211 </td>
212 </tr>
213 <tr id="i1" class="rowColor">
214 <td class="colFirst"><code>void</code></td>
215 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#transform(byte%5B%5D%5B%5D,org.libjpegturbo.turbojpeg.TJTransform%5B%5D)">transform</a></span>&#8203;(byte[][]&nbsp;dstBufs,
216          <a href="TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[]&nbsp;transforms)</code></th>
217 <td class="colLast">
218 <div class="block">Losslessly transform the JPEG source image associated with this
219  transformer instance into one or more JPEG images stored in the given
220  destination buffers.</div>
221 </td>
222 </tr>
223 <tr id="i2" class="altColor">
224 <td class="colFirst"><code>void</code></td>
225 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#transform(byte%5B%5D%5B%5D,org.libjpegturbo.turbojpeg.TJTransform%5B%5D,int)">transform</a></span>&#8203;(byte[][]&nbsp;dstBufs,
226          <a href="TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[]&nbsp;transforms,
227          int&nbsp;flags)</code></th>
228 <td class="colLast">
229 <div class="block"><span class="deprecatedLabel">Deprecated.</span>
230 <div class="deprecationComment">Use <a href="TJDecompressor.html#set(int,int)"><code>TJDecompressor.set()</code></a> and
231  <a href="#transform(byte%5B%5D%5B%5D,org.libjpegturbo.turbojpeg.TJTransform%5B%5D)"><code>transform(byte[][], TJTransform[])</code></a> instead.</div>
232 </div>
233 </td>
234 </tr>
235 <tr id="i3" class="rowColor">
236 <td class="colFirst"><code><a href="TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg">TJDecompressor</a>[]</code></td>
237 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#transform(org.libjpegturbo.turbojpeg.TJTransform%5B%5D)">transform</a></span>&#8203;(<a href="TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[]&nbsp;transforms)</code></th>
238 <td class="colLast">
239 <div class="block">Losslessly transform the JPEG source image associated with this
240  transformer instance and return an array of <a href="TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg"><code>TJDecompressor</code></a>
241  instances, each of which has a transformed JPEG image associated with it.</div>
242 </td>
243 </tr>
244 <tr id="i4" class="altColor">
245 <td class="colFirst"><code><a href="TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg">TJDecompressor</a>[]</code></td>
246 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#transform(org.libjpegturbo.turbojpeg.TJTransform%5B%5D,int)">transform</a></span>&#8203;(<a href="TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[]&nbsp;transforms,
247          int&nbsp;flags)</code></th>
248 <td class="colLast">
249 <div class="block"><span class="deprecatedLabel">Deprecated.</span>
250 <div class="deprecationComment">Use <a href="TJDecompressor.html#set(int,int)"><code>TJDecompressor.set()</code></a> and
251  <a href="#transform(org.libjpegturbo.turbojpeg.TJTransform%5B%5D)"><code>transform(TJTransform[])</code></a> instead.</div>
252 </div>
253 </td>
254 </tr>
255 </table>
256 <ul class="blockList">
257 <li class="blockList"><a id="methods.inherited.from.class.org.libjpegturbo.turbojpeg.TJDecompressor">
258 <!--   -->
259 </a>
260 <h3>Methods inherited from class&nbsp;org.libjpegturbo.turbojpeg.<a href="TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg">TJDecompressor</a></h3>
261 <code><a href="TJDecompressor.html#close()">close</a>, <a href="TJDecompressor.html#decompress(byte%5B%5D,int,int,int,int,int,int,int)">decompress</a>, <a href="TJDecompressor.html#decompress(int%5B%5D,int,int,int,int,int,int,int)">decompress</a>, <a href="TJDecompressor.html#decompress(int,int,int,int)">decompress</a>, <a href="TJDecompressor.html#decompress(int,int,int,int,int)">decompress</a>, <a href="TJDecompressor.html#decompress(java.awt.image.BufferedImage,int)">decompress</a>, <a href="TJDecompressor.html#decompress12(int,int)">decompress12</a>, <a href="TJDecompressor.html#decompress12(short%5B%5D,int,int,int,int)">decompress12</a>, <a href="TJDecompressor.html#decompress16(int,int)">decompress16</a>, <a href="TJDecompressor.html#decompress16(short%5B%5D,int,int,int,int)">decompress16</a>, <a href="TJDecompressor.html#decompress8(byte%5B%5D,int,int,int,int)">decompress8</a>, <a href="TJDecompressor.html#decompress8(int)">decompress8</a>, <a href="TJDecompressor.html#decompress8(int%5B%5D,int,int,int,int)">decompress8</a>, <a href="TJDecompressor.html#decompress8(int,int)">decompress8</a>, <a href="TJDecompressor.html#decompress8(java.awt.image.BufferedImage)">decompress8</a>, <a href="TJDecompressor.html#decompressToYUV(int)">decompressToYUV</a>, <a href="TJDecompressor.html#decompressToYUV(int%5B%5D)">decompressToYUV</a>, <a href="TJDecompressor.html#decompressToYUV(int,int%5B%5D,int,int)">decompressToYUV</a>, <a href="TJDecompressor.html#decompressToYUV(int,int,int,int)">decompressToYUV</a>, <a href="TJDecompressor.html#decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage)">decompressToYUV</a>, <a href="TJDecompressor.html#decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage,int)">decompressToYUV</a>, <a href="TJDecompressor.html#finalize()">finalize</a>, <a href="TJDecompressor.html#get(int)">get</a>, <a href="TJDecompressor.html#getColorspace()">getColorspace</a>, <a href="TJDecompressor.html#getHeight()">getHeight</a>, <a href="TJDecompressor.html#getJPEGBuf()">getJPEGBuf</a>, <a href="TJDecompressor.html#getJPEGSize()">getJPEGSize</a>, <a href="TJDecompressor.html#getScaledHeight(int,int)">getScaledHeight</a>, <a href="TJDecompressor.html#getScaledWidth(int,int)">getScaledWidth</a>, <a href="TJDecompressor.html#getSubsamp()">getSubsamp</a>, <a href="TJDecompressor.html#getWidth()">getWidth</a>, <a href="TJDecompressor.html#set(int,int)">set</a>, <a href="TJDecompressor.html#setCroppingRegion(java.awt.Rectangle)">setCroppingRegion</a>, <a href="TJDecompressor.html#setScalingFactor(org.libjpegturbo.turbojpeg.TJScalingFactor)">setScalingFactor</a>, <a href="TJDecompressor.html#setSourceImage(byte%5B%5D,int)">setSourceImage</a>, <a href="TJDecompressor.html#setSourceImage(org.libjpegturbo.turbojpeg.YUVImage)">setSourceImage</a></code></li>
262 </ul>
263 <ul class="blockList">
264 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
265 <!--   -->
266 </a>
267 <h3>Methods inherited from class&nbsp;java.lang.Object</h3>
268 <code>clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
269 </ul>
270 </li>
271 </ul>
272 </section>
273 </li>
274 </ul>
275 </div>
276 <div class="details">
277 <ul class="blockList">
278 <li class="blockList">
279 <!-- ========= CONSTRUCTOR DETAIL ======== -->
280 <section>
281 <ul class="blockList">
282 <li class="blockList"><a id="constructor.detail">
283 <!--   -->
284 </a>
285 <h3>Constructor Detail</h3>
286 <a id="&lt;init&gt;()">
287 <!--   -->
288 </a>
289 <ul class="blockList">
290 <li class="blockList">
291 <h4>TJTransformer</h4>
292 <pre>public&nbsp;TJTransformer()
293               throws <a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre>
294 <div class="block">Create a TurboJPEG lossless transformer instance.</div>
295 <dl>
296 <dt><span class="throwsLabel">Throws:</span></dt>
297 <dd><code><a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd>
298 </dl>
299 </li>
300 </ul>
301 <a id="&lt;init&gt;(byte[])">
302 <!--   -->
303 </a>
304 <ul class="blockList">
305 <li class="blockList">
306 <h4>TJTransformer</h4>
307 <pre>public&nbsp;TJTransformer&#8203;(byte[]&nbsp;jpegImage)
308               throws <a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre>
309 <div class="block">Create a TurboJPEG lossless transformer instance and associate the JPEG
310  source image stored in <code>jpegImage</code> with the newly created
311  instance.</div>
312 <dl>
313 <dt><span class="paramLabel">Parameters:</span></dt>
314 <dd><code>jpegImage</code> - buffer containing the JPEG source image to transform.
315  (The size of the JPEG image is assumed to be the length of the array.)
316  This buffer is not modified.</dd>
317 <dt><span class="throwsLabel">Throws:</span></dt>
318 <dd><code><a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd>
319 </dl>
320 </li>
321 </ul>
322 <a id="&lt;init&gt;(byte[],int)">
323 <!--   -->
324 </a>
325 <ul class="blockListLast">
326 <li class="blockList">
327 <h4>TJTransformer</h4>
328 <pre>public&nbsp;TJTransformer&#8203;(byte[]&nbsp;jpegImage,
329                      int&nbsp;imageSize)
330               throws <a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre>
331 <div class="block">Create a TurboJPEG lossless transformer instance and associate the JPEG
332  source image of length <code>imageSize</code> bytes stored in
333  <code>jpegImage</code> with the newly created instance.</div>
334 <dl>
335 <dt><span class="paramLabel">Parameters:</span></dt>
336 <dd><code>jpegImage</code> - buffer containing the JPEG source image to transform.
337  This buffer is not modified.</dd>
338 <dd><code>imageSize</code> - size of the JPEG source image (in bytes)</dd>
339 <dt><span class="throwsLabel">Throws:</span></dt>
340 <dd><code><a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd>
341 </dl>
342 </li>
343 </ul>
344 </li>
345 </ul>
346 </section>
347 <!-- ============ METHOD DETAIL ========== -->
348 <section>
349 <ul class="blockList">
350 <li class="blockList"><a id="method.detail">
351 <!--   -->
352 </a>
353 <h3>Method Detail</h3>
354 <a id="transform(byte[][],org.libjpegturbo.turbojpeg.TJTransform[])">
355 <!--   -->
356 </a>
357 <ul class="blockList">
358 <li class="blockList">
359 <h4>transform</h4>
360 <pre class="methodSignature">public&nbsp;void&nbsp;transform&#8203;(byte[][]&nbsp;dstBufs,
361                       <a href="TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[]&nbsp;transforms)
362                throws <a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre>
363 <div class="block">Losslessly transform the JPEG source image associated with this
364  transformer instance into one or more JPEG images stored in the given
365  destination buffers.  Lossless transforms work by moving the raw
366  coefficients from one JPEG image structure to another without altering the
367  values of the coefficients.  While this is typically faster than
368  decompressing the image, transforming it, and re-compressing it, lossless
369  transforms are not free.  Each lossless transform requires reading and
370  performing Huffman decoding on all of the coefficients in the source
371  image, regardless of the size of the destination image.  Thus, this method
372  provides a means of generating multiple transformed images from the same
373  source or of applying multiple transformations simultaneously, in order to
374  eliminate the need to read the source coefficients multiple times.</div>
375 <dl>
376 <dt><span class="paramLabel">Parameters:</span></dt>
377 <dd><code>dstBufs</code> - an array of JPEG destination buffers.
378  <code>dstbufs[i]</code> will receive a JPEG image that has been
379  transformed using the parameters in <code>transforms[i]</code>.  Use
380  <a href="TJ.html#bufSize(int,int,int)"><code>TJ.bufSize()</code></a> to determine the maximum size for each
381  buffer based on the transformed or cropped width and height and the level
382  of subsampling used in the source image.</dd>
383 <dd><code>transforms</code> - an array of <a href="TJTransform.html" title="class in org.libjpegturbo.turbojpeg"><code>TJTransform</code></a> instances, each of
384  which specifies the transform parameters and/or cropping region for the
385  corresponding transformed JPEG image</dd>
386 <dt><span class="throwsLabel">Throws:</span></dt>
387 <dd><code><a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd>
388 </dl>
389 </li>
390 </ul>
391 <a id="transform(byte[][],org.libjpegturbo.turbojpeg.TJTransform[],int)">
392 <!--   -->
393 </a>
394 <ul class="blockList">
395 <li class="blockList">
396 <h4>transform</h4>
397 <pre class="methodSignature">@Deprecated
398 public&nbsp;void&nbsp;transform&#8203;(byte[][]&nbsp;dstBufs,
399                       <a href="TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[]&nbsp;transforms,
400                       int&nbsp;flags)
401                throws <a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre>
402 <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
403 <div class="deprecationComment">Use <a href="TJDecompressor.html#set(int,int)"><code>TJDecompressor.set()</code></a> and
404  <a href="#transform(byte%5B%5D%5B%5D,org.libjpegturbo.turbojpeg.TJTransform%5B%5D)"><code>transform(byte[][], TJTransform[])</code></a> instead.</div>
405 </div>
406 <dl>
407 <dt><span class="throwsLabel">Throws:</span></dt>
408 <dd><code><a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd>
409 </dl>
410 </li>
411 </ul>
412 <a id="transform(org.libjpegturbo.turbojpeg.TJTransform[])">
413 <!--   -->
414 </a>
415 <ul class="blockList">
416 <li class="blockList">
417 <h4>transform</h4>
418 <pre class="methodSignature">public&nbsp;<a href="TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg">TJDecompressor</a>[]&nbsp;transform&#8203;(<a href="TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[]&nbsp;transforms)
419                            throws <a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre>
420 <div class="block">Losslessly transform the JPEG source image associated with this
421  transformer instance and return an array of <a href="TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg"><code>TJDecompressor</code></a>
422  instances, each of which has a transformed JPEG image associated with it.</div>
423 <dl>
424 <dt><span class="paramLabel">Parameters:</span></dt>
425 <dd><code>transforms</code> - an array of <a href="TJTransform.html" title="class in org.libjpegturbo.turbojpeg"><code>TJTransform</code></a> instances, each of
426  which specifies the transform parameters and/or cropping region for the
427  corresponding transformed JPEG image</dd>
428 <dt><span class="returnLabel">Returns:</span></dt>
429 <dd>an array of <a href="TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg"><code>TJDecompressor</code></a> instances, each of
430  which has a transformed JPEG image associated with it.</dd>
431 <dt><span class="throwsLabel">Throws:</span></dt>
432 <dd><code><a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd>
433 </dl>
434 </li>
435 </ul>
436 <a id="transform(org.libjpegturbo.turbojpeg.TJTransform[],int)">
437 <!--   -->
438 </a>
439 <ul class="blockList">
440 <li class="blockList">
441 <h4>transform</h4>
442 <pre class="methodSignature">@Deprecated
443 public&nbsp;<a href="TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg">TJDecompressor</a>[]&nbsp;transform&#8203;(<a href="TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[]&nbsp;transforms,
444                                   int&nbsp;flags)
445                            throws <a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre>
446 <div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
447 <div class="deprecationComment">Use <a href="TJDecompressor.html#set(int,int)"><code>TJDecompressor.set()</code></a> and
448  <a href="#transform(org.libjpegturbo.turbojpeg.TJTransform%5B%5D)"><code>transform(TJTransform[])</code></a> instead.</div>
449 </div>
450 <dl>
451 <dt><span class="throwsLabel">Throws:</span></dt>
452 <dd><code><a href="TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd>
453 </dl>
454 </li>
455 </ul>
456 <a id="getTransformedSizes()">
457 <!--   -->
458 </a>
459 <ul class="blockListLast">
460 <li class="blockList">
461 <h4>getTransformedSizes</h4>
462 <pre class="methodSignature">public&nbsp;int[]&nbsp;getTransformedSizes()</pre>
463 <div class="block">Returns an array containing the sizes of the transformed JPEG images
464  (in bytes) generated by the most recent transform operation.</div>
465 <dl>
466 <dt><span class="returnLabel">Returns:</span></dt>
467 <dd>an array containing the sizes of the transformed JPEG images
468  (in bytes) generated by the most recent transform operation.</dd>
469 </dl>
470 </li>
471 </ul>
472 </li>
473 </ul>
474 </section>
475 </li>
476 </ul>
477 </div>
478 </div>
479 </main>
480 <!-- ========= END OF CLASS DATA ========= -->
481 <footer role="contentinfo">
482 <nav role="navigation">
483 <!-- ======= START OF BOTTOM NAVBAR ====== -->
484 <div class="bottomNav"><a id="navbar.bottom">
485 <!--   -->
486 </a>
487 <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
488 <a id="navbar.bottom.firstrow">
489 <!--   -->
490 </a>
491 <ul class="navList" title="Navigation">
492 <li><a href="package-summary.html">Package</a></li>
493 <li class="navBarCell1Rev">Class</li>
494 <li><a href="package-tree.html">Tree</a></li>
495 <li><a href="../../../deprecated-list.html">Deprecated</a></li>
496 <li><a href="../../../index-all.html">Index</a></li>
497 <li><a href="../../../help-doc.html">Help</a></li>
498 </ul>
499 </div>
500 <div class="subNav">
501 <ul class="navList" id="allclasses_navbar_bottom">
502 <li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
503 </ul>
504 <div>
505 <script type="text/javascript"><!--
506   allClassesLink = document.getElementById("allclasses_navbar_bottom");
507   if(window==top) {
508     allClassesLink.style.display = "block";
509   }
510   else {
511     allClassesLink.style.display = "none";
512   }
513   //-->
514 </script>
515 <noscript>
516 <div>JavaScript is disabled on your browser.</div>
517 </noscript>
518 </div>
519 <div>
520 <ul class="subNavList">
521 <li>Summary:&nbsp;</li>
522 <li>Nested&nbsp;|&nbsp;</li>
523 <li>Field&nbsp;|&nbsp;</li>
524 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
525 <li><a href="#method.summary">Method</a></li>
526 </ul>
527 <ul class="subNavList">
528 <li>Detail:&nbsp;</li>
529 <li>Field&nbsp;|&nbsp;</li>
530 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
531 <li><a href="#method.detail">Method</a></li>
532 </ul>
533 </div>
534 <a id="skip.navbar.bottom">
535 <!--   -->
536 </a></div>
537 <!-- ======== END OF BOTTOM NAVBAR ======= -->
538 </nav>
539 </footer>
540 </body>
541 </html>