Modified: 
websites/production/commons/content/proper/commons-imaging/apidocs/overview-tree.html
==============================================================================
--- 
websites/production/commons/content/proper/commons-imaging/apidocs/overview-tree.html
 (original)
+++ 
websites/production/commons/content/proper/commons-imaging/apidocs/overview-tree.html
 Wed May 15 13:26:03 2024
@@ -68,8 +68,13 @@ loadScripts(document, 'script');</script
 <li><a 
href="org/apache/commons/imaging/formats/jpeg/xmp/package-tree.html">org.apache.commons.imaging.formats.jpeg.xmp</a>,
 </li>
 <li><a 
href="org/apache/commons/imaging/formats/pcx/package-tree.html">org.apache.commons.imaging.formats.pcx</a>,
 </li>
 <li><a 
href="org/apache/commons/imaging/formats/png/package-tree.html">org.apache.commons.imaging.formats.png</a>,
 </li>
+<li><a 
href="org/apache/commons/imaging/formats/png/chunks/package-tree.html">org.apache.commons.imaging.formats.png.chunks</a>,
 </li>
+<li><a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/package-tree.html">org.apache.commons.imaging.formats.png.scanlinefilters</a>,
 </li>
+<li><a 
href="org/apache/commons/imaging/formats/png/transparencyfilters/package-tree.html">org.apache.commons.imaging.formats.png.transparencyfilters</a>,
 </li>
 <li><a 
href="org/apache/commons/imaging/formats/pnm/package-tree.html">org.apache.commons.imaging.formats.pnm</a>,
 </li>
 <li><a 
href="org/apache/commons/imaging/formats/psd/package-tree.html">org.apache.commons.imaging.formats.psd</a>,
 </li>
+<li><a 
href="org/apache/commons/imaging/formats/psd/dataparsers/package-tree.html">org.apache.commons.imaging.formats.psd.dataparsers</a>,
 </li>
+<li><a 
href="org/apache/commons/imaging/formats/psd/datareaders/package-tree.html">org.apache.commons.imaging.formats.psd.datareaders</a>,
 </li>
 <li><a 
href="org/apache/commons/imaging/formats/rgbe/package-tree.html">org.apache.commons.imaging.formats.rgbe</a>,
 </li>
 <li><a 
href="org/apache/commons/imaging/formats/tiff/package-tree.html">org.apache.commons.imaging.formats.tiff</a>,
 </li>
 <li><a 
href="org/apache/commons/imaging/formats/tiff/constants/package-tree.html">org.apache.commons.imaging.formats.tiff.constants</a>,
 </li>
@@ -192,6 +197,13 @@ loadScripts(document, 'script');</script
 <li class="circle">org.apache.commons.imaging.formats.jpeg.segments.<a 
href="org/apache/commons/imaging/formats/jpeg/segments/SosSegment.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.jpeg.segments">SosSegment</a></li>
 </ul>
 </li>
+<li 
class="circle">org.apache.commons.imaging.formats.png.transparencyfilters.<a 
href="org/apache/commons/imaging/formats/png/transparencyfilters/AbstractTransparencyFilter.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.transparencyfilters">AbstractTransparencyFilter</a>
+<ul>
+<li 
class="circle">org.apache.commons.imaging.formats.png.transparencyfilters.<a 
href="org/apache/commons/imaging/formats/png/transparencyfilters/TransparencyFilterGrayscale.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.transparencyfilters">TransparencyFilterGrayscale</a></li>
+<li 
class="circle">org.apache.commons.imaging.formats.png.transparencyfilters.<a 
href="org/apache/commons/imaging/formats/png/transparencyfilters/TransparencyFilterIndexedColor.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.transparencyfilters">TransparencyFilterIndexedColor</a></li>
+<li 
class="circle">org.apache.commons.imaging.formats.png.transparencyfilters.<a 
href="org/apache/commons/imaging/formats/png/transparencyfilters/TransparencyFilterTrueColor.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.transparencyfilters">TransparencyFilterTrueColor</a></li>
+</ul>
+</li>
 <li class="circle">org.apache.commons.imaging.formats.jpeg.exif.<a 
href="org/apache/commons/imaging/formats/jpeg/exif/ExifRewriter.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.jpeg.exif">ExifRewriter</a></li>
 <li class="circle">org.apache.commons.imaging.icc.<a 
href="org/apache/commons/imaging/icc/IccProfileParser.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.icc">IccProfileParser</a></li>
 <li class="circle">org.apache.commons.imaging.formats.jpeg.iptc.<a 
href="org/apache/commons/imaging/formats/jpeg/iptc/IptcParser.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.jpeg.iptc">IptcParser</a></li>
@@ -204,6 +216,24 @@ loadScripts(document, 'script');</script
 </li>
 <li class="circle">org.apache.commons.imaging.formats.jpeg.<a 
href="org/apache/commons/imaging/formats/jpeg/JpegUtils.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.jpeg">JpegUtils</a></li>
 <li class="circle">org.apache.commons.imaging.formats.jpeg.xmp.<a 
href="org/apache/commons/imaging/formats/jpeg/xmp/JpegXmpParser.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.jpeg.xmp">JpegXmpParser</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunk.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunk</a>
+<ul>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/AbstractPngTextChunk.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">AbstractPngTextChunk</a>
+<ul>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunkItxt</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunkText.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunkText</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunkZtxt</a></li>
+</ul>
+</li>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunkGama.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunkGama</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunkIccp</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunkIdat.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunkIdat</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunkIhdr.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunkIhdr</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunkPhys.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunkPhys</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunkPlte.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunkPlte</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.chunks.<a 
href="org/apache/commons/imaging/formats/png/chunks/PngChunkScal.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.chunks">PngChunkScal</a></li>
+</ul>
+</li>
 <li class="circle">org.apache.commons.imaging.formats.tiff.<a 
href="org/apache/commons/imaging/formats/tiff/TiffReader.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.tiff">TiffReader</a></li>
 <li class="circle">org.apache.commons.imaging.formats.webp.chunks.<a 
href="org/apache/commons/imaging/formats/webp/chunks/WebPChunk.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.webp.chunks">WebPChunk</a>
 <ul>
@@ -237,6 +267,18 @@ loadScripts(document, 'script');</script
 <li class="circle">org.apache.commons.imaging.color.<a 
href="org/apache/commons/imaging/color/ColorHunterLab.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.color">ColorHunterLab</a></li>
 <li class="circle">org.apache.commons.imaging.<a 
href="org/apache/commons/imaging/ColorTools.html" class="type-name-link" 
title="class in org.apache.commons.imaging">ColorTools</a></li>
 <li class="circle">org.apache.commons.imaging.color.<a 
href="org/apache/commons/imaging/color/ColorXyz.html" class="type-name-link" 
title="class in org.apache.commons.imaging.color">ColorXyz</a></li>
+<li class="circle">org.apache.commons.imaging.formats.psd.datareaders.<a 
href="org/apache/commons/imaging/formats/psd/datareaders/CompressedDataReader.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.psd.datareaders">CompressedDataReader</a> 
(implements org.apache.commons.imaging.formats.psd.datareaders.<a 
href="org/apache/commons/imaging/formats/psd/datareaders/DataReader.html" 
title="interface in 
org.apache.commons.imaging.formats.psd.datareaders">DataReader</a>)</li>
+<li class="circle">org.apache.commons.imaging.formats.psd.dataparsers.<a 
href="org/apache/commons/imaging/formats/psd/dataparsers/DataParser.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.psd.dataparsers">DataParser</a>
+<ul>
+<li class="circle">org.apache.commons.imaging.formats.psd.dataparsers.<a 
href="org/apache/commons/imaging/formats/psd/dataparsers/DataParserBitmap.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.psd.dataparsers">DataParserBitmap</a></li>
+<li class="circle">org.apache.commons.imaging.formats.psd.dataparsers.<a 
href="org/apache/commons/imaging/formats/psd/dataparsers/DataParserCmyk.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.psd.dataparsers">DataParserCmyk</a></li>
+<li class="circle">org.apache.commons.imaging.formats.psd.dataparsers.<a 
href="org/apache/commons/imaging/formats/psd/dataparsers/DataParserGrayscale.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.psd.dataparsers">DataParserGrayscale</a></li>
+<li class="circle">org.apache.commons.imaging.formats.psd.dataparsers.<a 
href="org/apache/commons/imaging/formats/psd/dataparsers/DataParserIndexed.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.psd.dataparsers">DataParserIndexed</a></li>
+<li class="circle">org.apache.commons.imaging.formats.psd.dataparsers.<a 
href="org/apache/commons/imaging/formats/psd/dataparsers/DataParserLab.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.psd.dataparsers">DataParserLab</a></li>
+<li class="circle">org.apache.commons.imaging.formats.psd.dataparsers.<a 
href="org/apache/commons/imaging/formats/psd/dataparsers/DataParserRgb.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.psd.dataparsers">DataParserRgb</a></li>
+<li class="circle">org.apache.commons.imaging.formats.psd.dataparsers.<a 
href="org/apache/commons/imaging/formats/psd/dataparsers/DataParserStub.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.psd.dataparsers">DataParserStub</a></li>
+</ul>
+</li>
 <li class="circle">org.apache.commons.imaging.formats.tiff.constants.<a 
href="org/apache/commons/imaging/formats/tiff/constants/DcfTagConstants.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.tiff.constants">DcfTagConstants</a></li>
 <li class="circle">org.apache.commons.imaging.internal.<a 
href="org/apache/commons/imaging/internal/Debug.html" class="type-name-link" 
title="class in org.apache.commons.imaging.internal">Debug</a></li>
 <li class="circle">org.apache.commons.imaging.formats.jpeg.segments.<a 
href="org/apache/commons/imaging/formats/jpeg/segments/DhtSegment.HuffmanTable.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.jpeg.segments">DhtSegment.HuffmanTable</a></li>
@@ -379,6 +421,11 @@ loadScripts(document, 'script');</script
 <li class="circle">org.apache.commons.imaging.formats.tiff.constants.<a 
href="org/apache/commons/imaging/formats/tiff/constants/Rfc2301TagConstants.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.tiff.constants">Rfc2301TagConstants</a></li>
 <li class="circle">org.apache.commons.imaging.common.<a 
href="org/apache/commons/imaging/common/RgbBufferedImageFactory.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.common">RgbBufferedImageFactory</a> (implements 
org.apache.commons.imaging.common.<a 
href="org/apache/commons/imaging/common/BufferedImageFactory.html" 
title="interface in 
org.apache.commons.imaging.common">BufferedImageFactory</a>)</li>
 <li class="circle">org.apache.commons.imaging.internal.<a 
href="org/apache/commons/imaging/internal/SafeOperations.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.internal">SafeOperations</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilterAverage.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilterAverage</a>
 (implements org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilter.html"
 title="interface in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilter</a>)</li>
+<li class="circle">org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilterNone.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilterNone</a> 
(implements org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilter.html"
 title="interface in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilter</a>)</li>
+<li class="circle">org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilterPaeth.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilterPaeth</a> 
(implements org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilter.html"
 title="interface in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilter</a>)</li>
+<li class="circle">org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilterSub.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilterSub</a> 
(implements org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilter.html"
 title="interface in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilter</a>)</li>
+<li class="circle">org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilterUp.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilterUp</a> 
(implements org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilter.html"
 title="interface in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilter</a>)</li>
 <li class="circle">org.apache.commons.imaging.common.<a 
href="org/apache/commons/imaging/common/SimpleBufferedImageFactory.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.common">SimpleBufferedImageFactory</a> (implements 
org.apache.commons.imaging.common.<a 
href="org/apache/commons/imaging/common/BufferedImageFactory.html" 
title="interface in 
org.apache.commons.imaging.common">BufferedImageFactory</a>)</li>
 <li class="circle">org.apache.commons.imaging.palette.<a 
href="org/apache/commons/imaging/palette/SimplePalette.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.palette">SimplePalette</a> (implements 
org.apache.commons.imaging.palette.<a 
href="org/apache/commons/imaging/palette/Palette.html" title="interface in 
org.apache.commons.imaging.palette">Palette</a>)</li>
 <li class="circle">org.apache.commons.imaging.formats.jpeg.segments.<a 
href="org/apache/commons/imaging/formats/jpeg/segments/SofnSegment.Component.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.jpeg.segments">SofnSegment.Component</a></li>
@@ -478,6 +525,7 @@ loadScripts(document, 'script');</script
 </li>
 <li class="circle">org.apache.commons.imaging.formats.tiff.<a 
href="org/apache/commons/imaging/formats/tiff/TiffRasterStatistics.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.tiff">TiffRasterStatistics</a></li>
 <li class="circle">org.apache.commons.imaging.formats.tiff.constants.<a 
href="org/apache/commons/imaging/formats/tiff/constants/TiffTagConstants.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.tiff.constants">TiffTagConstants</a></li>
+<li class="circle">org.apache.commons.imaging.formats.psd.datareaders.<a 
href="org/apache/commons/imaging/formats/psd/datareaders/UncompressedDataReader.html"
 class="type-name-link" title="class in 
org.apache.commons.imaging.formats.psd.datareaders">UncompressedDataReader</a> 
(implements org.apache.commons.imaging.formats.psd.datareaders.<a 
href="org/apache/commons/imaging/formats/psd/datareaders/DataReader.html" 
title="interface in 
org.apache.commons.imaging.formats.psd.datareaders">DataReader</a>)</li>
 <li class="circle">org.apache.commons.imaging.formats.tiff.constants.<a 
href="org/apache/commons/imaging/formats/tiff/constants/WangTagConstants.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.tiff.constants">WangTagConstants</a></li>
 <li class="circle">org.apache.commons.imaging.formats.webp.<a 
href="org/apache/commons/imaging/formats/webp/WebPConstants.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.formats.webp">WebPConstants</a></li>
 <li class="circle">org.apache.commons.imaging.common.<a 
href="org/apache/commons/imaging/common/ZlibDeflate.html" 
class="type-name-link" title="class in 
org.apache.commons.imaging.common">ZlibDeflate</a></li>
@@ -489,6 +537,7 @@ loadScripts(document, 'script');</script
 <h2 title="Interface Hierarchy">Interface Hierarchy</h2>
 <ul>
 <li class="circle">org.apache.commons.imaging.common.<a 
href="org/apache/commons/imaging/common/BufferedImageFactory.html" 
class="type-name-link" title="interface in 
org.apache.commons.imaging.common">BufferedImageFactory</a></li>
+<li class="circle">org.apache.commons.imaging.formats.psd.datareaders.<a 
href="org/apache/commons/imaging/formats/psd/datareaders/DataReader.html" 
class="type-name-link" title="interface in 
org.apache.commons.imaging.formats.psd.datareaders">DataReader</a></li>
 <li class="circle">org.apache.commons.imaging.<a 
href="org/apache/commons/imaging/ImageFormat.html" class="type-name-link" 
title="interface in org.apache.commons.imaging">ImageFormat</a></li>
 <li class="circle">org.apache.commons.imaging.common.<a 
href="org/apache/commons/imaging/common/ImageMetadata.html" 
class="type-name-link" title="interface in 
org.apache.commons.imaging.common">ImageMetadata</a></li>
 <li class="circle">org.apache.commons.imaging.common.<a 
href="org/apache/commons/imaging/common/ImageMetadata.ImageMetadataItem.html" 
class="type-name-link" title="interface in 
org.apache.commons.imaging.common">ImageMetadata.ImageMetadataItem</a></li>
@@ -499,6 +548,7 @@ loadScripts(document, 'script');</script
 <li class="circle">org.apache.commons.imaging.mylzw.<a 
href="org/apache/commons/imaging/mylzw/MyLzwDecompressor.Listener.html" 
class="type-name-link" title="interface in 
org.apache.commons.imaging.mylzw">MyLzwDecompressor.Listener</a></li>
 <li class="circle">org.apache.commons.imaging.palette.<a 
href="org/apache/commons/imaging/palette/Palette.html" class="type-name-link" 
title="interface in org.apache.commons.imaging.palette">Palette</a></li>
 <li 
class="circle">org.apache.commons.imaging.formats.tiff.photometricinterpreters.floatingpoint.<a
 
href="org/apache/commons/imaging/formats/tiff/photometricinterpreters/floatingpoint/PaletteEntry.html"
 class="type-name-link" title="interface in 
org.apache.commons.imaging.formats.tiff.photometricinterpreters.floatingpoint">PaletteEntry</a></li>
+<li class="circle">org.apache.commons.imaging.formats.png.scanlinefilters.<a 
href="org/apache/commons/imaging/formats/png/scanlinefilters/ScanlineFilter.html"
 class="type-name-link" title="interface in 
org.apache.commons.imaging.formats.png.scanlinefilters">ScanlineFilter</a></li>
 <li class="circle">org.apache.commons.imaging.formats.tiff.<a 
href="org/apache/commons/imaging/formats/tiff/TiffReader.Listener.html" 
class="type-name-link" title="interface in 
org.apache.commons.imaging.formats.tiff">TiffReader.Listener</a></li>
 <li class="circle">org.apache.commons.imaging.common.<a 
href="org/apache/commons/imaging/common/XmpEmbeddable.html" 
class="type-name-link" title="interface in 
org.apache.commons.imaging.common">XmpEmbeddable</a>&lt;E&gt;</li>
 </ul>

Modified: 
websites/production/commons/content/proper/commons-imaging/apidocs/package-search-index.js
==============================================================================
--- 
websites/production/commons/content/proper/commons-imaging/apidocs/package-search-index.js
 (original)
+++ 
websites/production/commons/content/proper/commons-imaging/apidocs/package-search-index.js
 Wed May 15 13:26:03 2024
@@ -1 +1 @@
-packageSearchIndex = [{"l":"All 
Packages","u":"allpackages-index.html"},{"l":"org.apache.commons.imaging"},{"l":"org.apache.commons.imaging.bytesource"},{"l":"org.apache.commons.imaging.color"},{"l":"org.apache.commons.imaging.common"},{"l":"org.apache.commons.imaging.formats.bmp"},{"l":"org.apache.commons.imaging.formats.dcx"},{"l":"org.apache.commons.imaging.formats.gif"},{"l":"org.apache.commons.imaging.formats.icns"},{"l":"org.apache.commons.imaging.formats.ico"},{"l":"org.apache.commons.imaging.formats.jpeg"},{"l":"org.apache.commons.imaging.formats.jpeg.decoder"},{"l":"org.apache.commons.imaging.formats.jpeg.exif"},{"l":"org.apache.commons.imaging.formats.jpeg.iptc"},{"l":"org.apache.commons.imaging.formats.jpeg.segments"},{"l":"org.apache.commons.imaging.formats.jpeg.xmp"},{"l":"org.apache.commons.imaging.formats.pcx"},{"l":"org.apache.commons.imaging.formats.png"},{"l":"org.apache.commons.imaging.formats.pnm"},{"l":"org.apache.commons.imaging.formats.psd"},{"l":"org.apache.c
 
ommons.imaging.formats.rgbe"},{"l":"org.apache.commons.imaging.formats.tiff"},{"l":"org.apache.commons.imaging.formats.tiff.constants"},{"l":"org.apache.commons.imaging.formats.tiff.datareaders"},{"l":"org.apache.commons.imaging.formats.tiff.fieldtypes"},{"l":"org.apache.commons.imaging.formats.tiff.itu_t4"},{"l":"org.apache.commons.imaging.formats.tiff.photometricinterpreters"},{"l":"org.apache.commons.imaging.formats.tiff.photometricinterpreters.floatingpoint"},{"l":"org.apache.commons.imaging.formats.tiff.taginfos"},{"l":"org.apache.commons.imaging.formats.tiff.write"},{"l":"org.apache.commons.imaging.formats.wbmp"},{"l":"org.apache.commons.imaging.formats.webp"},{"l":"org.apache.commons.imaging.formats.webp.chunks"},{"l":"org.apache.commons.imaging.formats.xbm"},{"l":"org.apache.commons.imaging.formats.xpm"},{"l":"org.apache.commons.imaging.icc"},{"l":"org.apache.commons.imaging.internal"},{"l":"org.apache.commons.imaging.mylzw"},{"l":"org.apache.commons.imaging.palette"}];updat
 eSearchResults();
\ No newline at end of file
+packageSearchIndex = [{"l":"All 
Packages","u":"allpackages-index.html"},{"l":"org.apache.commons.imaging"},{"l":"org.apache.commons.imaging.bytesource"},{"l":"org.apache.commons.imaging.color"},{"l":"org.apache.commons.imaging.common"},{"l":"org.apache.commons.imaging.formats.bmp"},{"l":"org.apache.commons.imaging.formats.dcx"},{"l":"org.apache.commons.imaging.formats.gif"},{"l":"org.apache.commons.imaging.formats.icns"},{"l":"org.apache.commons.imaging.formats.ico"},{"l":"org.apache.commons.imaging.formats.jpeg"},{"l":"org.apache.commons.imaging.formats.jpeg.decoder"},{"l":"org.apache.commons.imaging.formats.jpeg.exif"},{"l":"org.apache.commons.imaging.formats.jpeg.iptc"},{"l":"org.apache.commons.imaging.formats.jpeg.segments"},{"l":"org.apache.commons.imaging.formats.jpeg.xmp"},{"l":"org.apache.commons.imaging.formats.pcx"},{"l":"org.apache.commons.imaging.formats.png"},{"l":"org.apache.commons.imaging.formats.png.chunks"},{"l":"org.apache.commons.imaging.formats.png.scanlinefilte
 
rs"},{"l":"org.apache.commons.imaging.formats.png.transparencyfilters"},{"l":"org.apache.commons.imaging.formats.pnm"},{"l":"org.apache.commons.imaging.formats.psd"},{"l":"org.apache.commons.imaging.formats.psd.dataparsers"},{"l":"org.apache.commons.imaging.formats.psd.datareaders"},{"l":"org.apache.commons.imaging.formats.rgbe"},{"l":"org.apache.commons.imaging.formats.tiff"},{"l":"org.apache.commons.imaging.formats.tiff.constants"},{"l":"org.apache.commons.imaging.formats.tiff.datareaders"},{"l":"org.apache.commons.imaging.formats.tiff.fieldtypes"},{"l":"org.apache.commons.imaging.formats.tiff.itu_t4"},{"l":"org.apache.commons.imaging.formats.tiff.photometricinterpreters"},{"l":"org.apache.commons.imaging.formats.tiff.photometricinterpreters.floatingpoint"},{"l":"org.apache.commons.imaging.formats.tiff.taginfos"},{"l":"org.apache.commons.imaging.formats.tiff.write"},{"l":"org.apache.commons.imaging.formats.wbmp"},{"l":"org.apache.commons.imaging.formats.webp"},{"l":"org.apache.com
 
mons.imaging.formats.webp.chunks"},{"l":"org.apache.commons.imaging.formats.xbm"},{"l":"org.apache.commons.imaging.formats.xpm"},{"l":"org.apache.commons.imaging.icc"},{"l":"org.apache.commons.imaging.internal"},{"l":"org.apache.commons.imaging.mylzw"},{"l":"org.apache.commons.imaging.palette"}];updateSearchResults();
\ No newline at end of file

Added: 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/AbstractPngTextChunk.html
==============================================================================
--- 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/AbstractPngTextChunk.html
 (added)
+++ 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/AbstractPngTextChunk.html
 Wed May 15 13:26:03 2024
@@ -0,0 +1,111 @@
+<!DOCTYPE HTML>
+<html lang="en">
+<head>
+<!-- Generated by javadoc (17) -->
+<title>Source code</title>
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta name="description" content="source: package: 
org.apache.commons.imaging.formats.png.chunks, class: AbstractPngTextChunk">
+<meta name="generator" content="javadoc/SourceToHTMLConverter">
+<link rel="stylesheet" type="text/css" 
href="../../../../../../../../stylesheet.css" title="Style">
+</head>
+<body class="source-page">
+<main role="main">
+<div class="source-container">
+<pre><span class="source-line-no">001</span><span id="line-1">/*</span>
+<span class="source-line-no">002</span><span id="line-2"> * Licensed to the 
Apache Software Foundation (ASF) under one or more</span>
+<span class="source-line-no">003</span><span id="line-3"> * contributor 
license agreements.  See the NOTICE file distributed with</span>
+<span class="source-line-no">004</span><span id="line-4"> * this work for 
additional information regarding copyright ownership.</span>
+<span class="source-line-no">005</span><span id="line-5"> * The ASF licenses 
this file to You under the Apache License, Version 2.0</span>
+<span class="source-line-no">006</span><span id="line-6"> * (the "License"); 
you may not use this file except in compliance with</span>
+<span class="source-line-no">007</span><span id="line-7"> * the License.  You 
may obtain a copy of the License at</span>
+<span class="source-line-no">008</span><span id="line-8"> *</span>
+<span class="source-line-no">009</span><span id="line-9"> *      
http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="source-line-no">010</span><span id="line-10"> *</span>
+<span class="source-line-no">011</span><span id="line-11"> * Unless required 
by applicable law or agreed to in writing, software</span>
+<span class="source-line-no">012</span><span id="line-12"> * distributed under 
the License is distributed on an "AS IS" BASIS,</span>
+<span class="source-line-no">013</span><span id="line-13"> * WITHOUT 
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
+<span class="source-line-no">014</span><span id="line-14"> * See the License 
for the specific language governing permissions and</span>
+<span class="source-line-no">015</span><span id="line-15"> * limitations under 
the License.</span>
+<span class="source-line-no">016</span><span id="line-16"> */</span>
+<span class="source-line-no">017</span><span id="line-17">package 
org.apache.commons.imaging.formats.png.chunks;</span>
+<span class="source-line-no">018</span><span id="line-18"></span>
+<span class="source-line-no">019</span><span id="line-19">import 
org.apache.commons.imaging.formats.png.AbstractPngText;</span>
+<span class="source-line-no">020</span><span id="line-20"></span>
+<span class="source-line-no">021</span><span id="line-21">public abstract 
class AbstractPngTextChunk extends PngChunk {</span>
+<span class="source-line-no">022</span><span id="line-22"></span>
+<span class="source-line-no">023</span><span id="line-23">    public 
AbstractPngTextChunk(final int length, final int chunkType, final int crc, 
final byte[] bytes) {</span>
+<span class="source-line-no">024</span><span id="line-24">        
super(length, chunkType, crc, bytes);</span>
+<span class="source-line-no">025</span><span id="line-25">    }</span>
+<span class="source-line-no">026</span><span id="line-26"></span>
+<span class="source-line-no">027</span><span id="line-27">    public abstract 
AbstractPngText getContents();</span>
+<span class="source-line-no">028</span><span id="line-28"></span>
+<span class="source-line-no">029</span><span id="line-29">    public abstract 
String getKeyword();</span>
+<span class="source-line-no">030</span><span id="line-30"></span>
+<span class="source-line-no">031</span><span id="line-31">    public abstract 
String getText();</span>
+<span class="source-line-no">032</span><span id="line-32"></span>
+<span class="source-line-no">033</span><span id="line-33">}</span>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</main>
+</body>
+</html>
\ No newline at end of file

Added: 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunk.html
==============================================================================
--- 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunk.html
 (added)
+++ 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunk.html
 Wed May 15 13:26:03 2024
@@ -0,0 +1,209 @@
+<!DOCTYPE HTML>
+<html lang="en">
+<head>
+<!-- Generated by javadoc (17) -->
+<title>Source code</title>
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta name="description" content="source: package: 
org.apache.commons.imaging.formats.png.chunks, class: PngChunk">
+<meta name="generator" content="javadoc/SourceToHTMLConverter">
+<link rel="stylesheet" type="text/css" 
href="../../../../../../../../stylesheet.css" title="Style">
+</head>
+<body class="source-page">
+<main role="main">
+<div class="source-container">
+<pre><span class="source-line-no">001</span><span id="line-1">/*</span>
+<span class="source-line-no">002</span><span id="line-2"> * Licensed to the 
Apache Software Foundation (ASF) under one or more</span>
+<span class="source-line-no">003</span><span id="line-3"> * contributor 
license agreements.  See the NOTICE file distributed with</span>
+<span class="source-line-no">004</span><span id="line-4"> * this work for 
additional information regarding copyright ownership.</span>
+<span class="source-line-no">005</span><span id="line-5"> * The ASF licenses 
this file to You under the Apache License, Version 2.0</span>
+<span class="source-line-no">006</span><span id="line-6"> * (the "License"); 
you may not use this file except in compliance with</span>
+<span class="source-line-no">007</span><span id="line-7"> * the License.  You 
may obtain a copy of the License at</span>
+<span class="source-line-no">008</span><span id="line-8"> *</span>
+<span class="source-line-no">009</span><span id="line-9"> *      
http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="source-line-no">010</span><span id="line-10"> *</span>
+<span class="source-line-no">011</span><span id="line-11"> * Unless required 
by applicable law or agreed to in writing, software</span>
+<span class="source-line-no">012</span><span id="line-12"> * distributed under 
the License is distributed on an "AS IS" BASIS,</span>
+<span class="source-line-no">013</span><span id="line-13"> * WITHOUT 
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
+<span class="source-line-no">014</span><span id="line-14"> * See the License 
for the specific language governing permissions and</span>
+<span class="source-line-no">015</span><span id="line-15"> * limitations under 
the License.</span>
+<span class="source-line-no">016</span><span id="line-16"> */</span>
+<span class="source-line-no">017</span><span id="line-17">package 
org.apache.commons.imaging.formats.png.chunks;</span>
+<span class="source-line-no">018</span><span id="line-18"></span>
+<span class="source-line-no">019</span><span id="line-19">import 
java.io.ByteArrayInputStream;</span>
+<span class="source-line-no">020</span><span id="line-20">import 
java.util.Objects;</span>
+<span class="source-line-no">021</span><span id="line-21"></span>
+<span class="source-line-no">022</span><span id="line-22">import 
org.apache.commons.imaging.common.BinaryFileParser;</span>
+<span class="source-line-no">023</span><span id="line-23"></span>
+<span class="source-line-no">024</span><span id="line-24">/**</span>
+<span class="source-line-no">025</span><span id="line-25"> * A PNG image is 
composed of several chunks. This is the base class for the chunks, used by the 
parser.</span>
+<span class="source-line-no">026</span><span id="line-26"> *</span>
+<span class="source-line-no">027</span><span id="line-27"> * @see &lt;a 
href="https://en.wikipedia.org/wiki/Portable_Network_Graphics#%22Chunks%22_within_the_file"&gt;Portable_Network_Graphics&lt;/a&gt;</span>
+<span class="source-line-no">028</span><span id="line-28"> */</span>
+<span class="source-line-no">029</span><span id="line-29">public class 
PngChunk extends BinaryFileParser {</span>
+<span class="source-line-no">030</span><span id="line-30"></span>
+<span class="source-line-no">031</span><span id="line-31">    private final 
int length;</span>
+<span class="source-line-no">032</span><span id="line-32">    private final 
int chunkType;</span>
+<span class="source-line-no">033</span><span id="line-33">    private final 
int crc;</span>
+<span class="source-line-no">034</span><span id="line-34">    private final 
byte[] bytes;</span>
+<span class="source-line-no">035</span><span id="line-35"></span>
+<span class="source-line-no">036</span><span id="line-36">    private final 
boolean[] propertyBits;</span>
+<span class="source-line-no">037</span><span id="line-37">    private final 
boolean ancillary;</span>
+<span class="source-line-no">038</span><span id="line-38">    private final 
boolean isPrivate;</span>
+<span class="source-line-no">039</span><span id="line-39">    private final 
boolean reserved;</span>
+<span class="source-line-no">040</span><span id="line-40">    private final 
boolean safeToCopy;</span>
+<span class="source-line-no">041</span><span id="line-41"></span>
+<span class="source-line-no">042</span><span id="line-42">    /**</span>
+<span class="source-line-no">043</span><span id="line-43">     * Constructs a 
new instance.</span>
+<span class="source-line-no">044</span><span id="line-44">     *</span>
+<span class="source-line-no">045</span><span id="line-45">     * @param length 
   chunk length</span>
+<span class="source-line-no">046</span><span id="line-46">     * @param 
chunkType chunk type</span>
+<span class="source-line-no">047</span><span id="line-47">     * @param crc    
   CRC computed over the chunk type and chunk data (but not the length)</span>
+<span class="source-line-no">048</span><span id="line-48">     * @param bytes  
   chunk data bytes</span>
+<span class="source-line-no">049</span><span id="line-49">     * @throws 
NullPointerException if bytes is null.</span>
+<span class="source-line-no">050</span><span id="line-50">     */</span>
+<span class="source-line-no">051</span><span id="line-51">    public 
PngChunk(final int length, final int chunkType, final int crc, final byte[] 
bytes) {</span>
+<span class="source-line-no">052</span><span id="line-52">        this.length 
= length;</span>
+<span class="source-line-no">053</span><span id="line-53">        
this.chunkType = chunkType;</span>
+<span class="source-line-no">054</span><span id="line-54">        this.crc = 
crc;</span>
+<span class="source-line-no">055</span><span id="line-55">        this.bytes = 
Objects.requireNonNull(bytes, "bytes").clone();</span>
+<span class="source-line-no">056</span><span id="line-56"></span>
+<span class="source-line-no">057</span><span id="line-57">        propertyBits 
= new boolean[4];</span>
+<span class="source-line-no">058</span><span id="line-58">        int shift = 
24;</span>
+<span class="source-line-no">059</span><span id="line-59">        final int 
theMask = 1 &lt;&lt; 5;</span>
+<span class="source-line-no">060</span><span id="line-60">        for (int i = 
0; i &lt; propertyBits.length; i++) {</span>
+<span class="source-line-no">061</span><span id="line-61">            final 
int theByte = 0xff &amp; chunkType &gt;&gt; shift;</span>
+<span class="source-line-no">062</span><span id="line-62">            shift -= 
8;</span>
+<span class="source-line-no">063</span><span id="line-63">            
propertyBits[i] = (theByte &amp; theMask) &gt; 0;</span>
+<span class="source-line-no">064</span><span id="line-64">        }</span>
+<span class="source-line-no">065</span><span id="line-65"></span>
+<span class="source-line-no">066</span><span id="line-66">        ancillary = 
propertyBits[0];</span>
+<span class="source-line-no">067</span><span id="line-67">        isPrivate = 
propertyBits[1];</span>
+<span class="source-line-no">068</span><span id="line-68">        reserved = 
propertyBits[2];</span>
+<span class="source-line-no">069</span><span id="line-69">        safeToCopy = 
propertyBits[3];</span>
+<span class="source-line-no">070</span><span id="line-70">    }</span>
+<span class="source-line-no">071</span><span id="line-71"></span>
+<span class="source-line-no">072</span><span id="line-72">    /**</span>
+<span class="source-line-no">073</span><span id="line-73">     * Gets a copy 
of the chunk bytes.</span>
+<span class="source-line-no">074</span><span id="line-74">     *</span>
+<span class="source-line-no">075</span><span id="line-75">     * @return the 
chunk bytes</span>
+<span class="source-line-no">076</span><span id="line-76">     */</span>
+<span class="source-line-no">077</span><span id="line-77">    public byte[] 
getBytes() {</span>
+<span class="source-line-no">078</span><span id="line-78">        return 
bytes.clone();</span>
+<span class="source-line-no">079</span><span id="line-79">    }</span>
+<span class="source-line-no">080</span><span id="line-80"></span>
+<span class="source-line-no">081</span><span id="line-81">    public int 
getChunkType() {</span>
+<span class="source-line-no">082</span><span id="line-82">        return 
chunkType;</span>
+<span class="source-line-no">083</span><span id="line-83">    }</span>
+<span class="source-line-no">084</span><span id="line-84"></span>
+<span class="source-line-no">085</span><span id="line-85">    public int 
getCrc() {</span>
+<span class="source-line-no">086</span><span id="line-86">        return 
crc;</span>
+<span class="source-line-no">087</span><span id="line-87">    }</span>
+<span class="source-line-no">088</span><span id="line-88"></span>
+<span class="source-line-no">089</span><span id="line-89">    /**</span>
+<span class="source-line-no">090</span><span id="line-90">     * Gets a new 
{@link ByteArrayInputStream} for the chunk bytes.</span>
+<span class="source-line-no">091</span><span id="line-91">     *</span>
+<span class="source-line-no">092</span><span id="line-92">     * 
&lt;p&gt;</span>
+<span class="source-line-no">093</span><span id="line-93">     * The caller is 
responsible for closing the resource.</span>
+<span class="source-line-no">094</span><span id="line-94">     * 
&lt;/p&gt;</span>
+<span class="source-line-no">095</span><span id="line-95">     *</span>
+<span class="source-line-no">096</span><span id="line-96">     * @return a 
ByteArrayInputStream for the chunk bytes</span>
+<span class="source-line-no">097</span><span id="line-97">     */</span>
+<span class="source-line-no">098</span><span id="line-98">    protected 
ByteArrayInputStream getDataStream() {</span>
+<span class="source-line-no">099</span><span id="line-99">        return new 
ByteArrayInputStream(bytes);</span>
+<span class="source-line-no">100</span><span id="line-100">    }</span>
+<span class="source-line-no">101</span><span id="line-101"></span>
+<span class="source-line-no">102</span><span id="line-102">    public int 
getLength() {</span>
+<span class="source-line-no">103</span><span id="line-103">        return 
length;</span>
+<span class="source-line-no">104</span><span id="line-104">    }</span>
+<span class="source-line-no">105</span><span id="line-105"></span>
+<span class="source-line-no">106</span><span id="line-106">    /**</span>
+<span class="source-line-no">107</span><span id="line-107">     * Gets a copy 
of the chunk property bits.</span>
+<span class="source-line-no">108</span><span id="line-108">     *</span>
+<span class="source-line-no">109</span><span id="line-109">     * @return the 
chunk property bits</span>
+<span class="source-line-no">110</span><span id="line-110">     */</span>
+<span class="source-line-no">111</span><span id="line-111">    public 
boolean[] getPropertyBits() {</span>
+<span class="source-line-no">112</span><span id="line-112">        return 
propertyBits.clone();</span>
+<span class="source-line-no">113</span><span id="line-113">    }</span>
+<span class="source-line-no">114</span><span id="line-114"></span>
+<span class="source-line-no">115</span><span id="line-115">    public boolean 
isAncillary() {</span>
+<span class="source-line-no">116</span><span id="line-116">        return 
ancillary;</span>
+<span class="source-line-no">117</span><span id="line-117">    }</span>
+<span class="source-line-no">118</span><span id="line-118"></span>
+<span class="source-line-no">119</span><span id="line-119">    public boolean 
isPrivate() {</span>
+<span class="source-line-no">120</span><span id="line-120">        return 
isPrivate;</span>
+<span class="source-line-no">121</span><span id="line-121">    }</span>
+<span class="source-line-no">122</span><span id="line-122"></span>
+<span class="source-line-no">123</span><span id="line-123">    public boolean 
isReserved() {</span>
+<span class="source-line-no">124</span><span id="line-124">        return 
reserved;</span>
+<span class="source-line-no">125</span><span id="line-125">    }</span>
+<span class="source-line-no">126</span><span id="line-126"></span>
+<span class="source-line-no">127</span><span id="line-127">    public boolean 
isSafeToCopy() {</span>
+<span class="source-line-no">128</span><span id="line-128">        return 
safeToCopy;</span>
+<span class="source-line-no">129</span><span id="line-129">    }</span>
+<span class="source-line-no">130</span><span id="line-130"></span>
+<span class="source-line-no">131</span><span id="line-131">}</span>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</main>
+</body>
+</html>
\ No newline at end of file

Added: 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkGama.html
==============================================================================
--- 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkGama.html
 (added)
+++ 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkGama.html
 Wed May 15 13:26:03 2024
@@ -0,0 +1,117 @@
+<!DOCTYPE HTML>
+<html lang="en">
+<head>
+<!-- Generated by javadoc (17) -->
+<title>Source code</title>
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta name="description" content="source: package: 
org.apache.commons.imaging.formats.png.chunks, class: PngChunkGama">
+<meta name="generator" content="javadoc/SourceToHTMLConverter">
+<link rel="stylesheet" type="text/css" 
href="../../../../../../../../stylesheet.css" title="Style">
+</head>
+<body class="source-page">
+<main role="main">
+<div class="source-container">
+<pre><span class="source-line-no">001</span><span id="line-1">/*</span>
+<span class="source-line-no">002</span><span id="line-2"> * Licensed to the 
Apache Software Foundation (ASF) under one or more</span>
+<span class="source-line-no">003</span><span id="line-3"> * contributor 
license agreements.  See the NOTICE file distributed with</span>
+<span class="source-line-no">004</span><span id="line-4"> * this work for 
additional information regarding copyright ownership.</span>
+<span class="source-line-no">005</span><span id="line-5"> * The ASF licenses 
this file to You under the Apache License, Version 2.0</span>
+<span class="source-line-no">006</span><span id="line-6"> * (the "License"); 
you may not use this file except in compliance with</span>
+<span class="source-line-no">007</span><span id="line-7"> * the License.  You 
may obtain a copy of the License at</span>
+<span class="source-line-no">008</span><span id="line-8"> *</span>
+<span class="source-line-no">009</span><span id="line-9"> *      
http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="source-line-no">010</span><span id="line-10"> *</span>
+<span class="source-line-no">011</span><span id="line-11"> * Unless required 
by applicable law or agreed to in writing, software</span>
+<span class="source-line-no">012</span><span id="line-12"> * distributed under 
the License is distributed on an "AS IS" BASIS,</span>
+<span class="source-line-no">013</span><span id="line-13"> * WITHOUT 
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
+<span class="source-line-no">014</span><span id="line-14"> * See the License 
for the specific language governing permissions and</span>
+<span class="source-line-no">015</span><span id="line-15"> * limitations under 
the License.</span>
+<span class="source-line-no">016</span><span id="line-16"> */</span>
+<span class="source-line-no">017</span><span id="line-17">package 
org.apache.commons.imaging.formats.png.chunks;</span>
+<span class="source-line-no">018</span><span id="line-18"></span>
+<span class="source-line-no">019</span><span id="line-19">import static 
org.apache.commons.imaging.common.BinaryFunctions.read4Bytes;</span>
+<span class="source-line-no">020</span><span id="line-20"></span>
+<span class="source-line-no">021</span><span id="line-21">import 
java.io.ByteArrayInputStream;</span>
+<span class="source-line-no">022</span><span id="line-22">import 
java.io.IOException;</span>
+<span class="source-line-no">023</span><span id="line-23"></span>
+<span class="source-line-no">024</span><span id="line-24">public class 
PngChunkGama extends PngChunk {</span>
+<span class="source-line-no">025</span><span id="line-25"></span>
+<span class="source-line-no">026</span><span id="line-26">    private final 
int gamma;</span>
+<span class="source-line-no">027</span><span id="line-27"></span>
+<span class="source-line-no">028</span><span id="line-28">    public 
PngChunkGama(final int length, final int chunkType, final int crc, final byte[] 
bytes) throws IOException {</span>
+<span class="source-line-no">029</span><span id="line-29">        
super(length, chunkType, crc, bytes);</span>
+<span class="source-line-no">030</span><span id="line-30"></span>
+<span class="source-line-no">031</span><span id="line-31">        final 
ByteArrayInputStream is = new ByteArrayInputStream(bytes);</span>
+<span class="source-line-no">032</span><span id="line-32">        gamma = 
read4Bytes("Gamma", is, "Not a Valid PNG File: gAMA Corrupt", 
getByteOrder());</span>
+<span class="source-line-no">033</span><span id="line-33">    }</span>
+<span class="source-line-no">034</span><span id="line-34"></span>
+<span class="source-line-no">035</span><span id="line-35">    public double 
getGamma() {</span>
+<span class="source-line-no">036</span><span id="line-36">        return 1.0 / 
(gamma / 100000.0);</span>
+<span class="source-line-no">037</span><span id="line-37">    }</span>
+<span class="source-line-no">038</span><span id="line-38"></span>
+<span class="source-line-no">039</span><span id="line-39">}</span>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</main>
+</body>
+</html>
\ No newline at end of file

Added: 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.html
==============================================================================
--- 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.html
 (added)
+++ 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.html
 Wed May 15 13:26:03 2024
@@ -0,0 +1,202 @@
+<!DOCTYPE HTML>
+<html lang="en">
+<head>
+<!-- Generated by javadoc (17) -->
+<title>Source code</title>
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta name="description" content="source: package: 
org.apache.commons.imaging.formats.png.chunks, class: PngChunkIccp">
+<meta name="generator" content="javadoc/SourceToHTMLConverter">
+<link rel="stylesheet" type="text/css" 
href="../../../../../../../../stylesheet.css" title="Style">
+</head>
+<body class="source-page">
+<main role="main">
+<div class="source-container">
+<pre><span class="source-line-no">001</span><span id="line-1">/*</span>
+<span class="source-line-no">002</span><span id="line-2"> * Licensed to the 
Apache Software Foundation (ASF) under one or more</span>
+<span class="source-line-no">003</span><span id="line-3"> * contributor 
license agreements.  See the NOTICE file distributed with</span>
+<span class="source-line-no">004</span><span id="line-4"> * this work for 
additional information regarding copyright ownership.</span>
+<span class="source-line-no">005</span><span id="line-5"> * The ASF licenses 
this file to You under the Apache License, Version 2.0</span>
+<span class="source-line-no">006</span><span id="line-6"> * (the "License"); 
you may not use this file except in compliance with</span>
+<span class="source-line-no">007</span><span id="line-7"> * the License.  You 
may obtain a copy of the License at</span>
+<span class="source-line-no">008</span><span id="line-8"> *</span>
+<span class="source-line-no">009</span><span id="line-9"> *      
http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="source-line-no">010</span><span id="line-10"> *</span>
+<span class="source-line-no">011</span><span id="line-11"> * Unless required 
by applicable law or agreed to in writing, software</span>
+<span class="source-line-no">012</span><span id="line-12"> * distributed under 
the License is distributed on an "AS IS" BASIS,</span>
+<span class="source-line-no">013</span><span id="line-13"> * WITHOUT 
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
+<span class="source-line-no">014</span><span id="line-14"> * See the License 
for the specific language governing permissions and</span>
+<span class="source-line-no">015</span><span id="line-15"> * limitations under 
the License.</span>
+<span class="source-line-no">016</span><span id="line-16"> */</span>
+<span class="source-line-no">017</span><span id="line-17">package 
org.apache.commons.imaging.formats.png.chunks;</span>
+<span class="source-line-no">018</span><span id="line-18"></span>
+<span class="source-line-no">019</span><span id="line-19">import 
java.io.ByteArrayInputStream;</span>
+<span class="source-line-no">020</span><span id="line-20">import 
java.io.IOException;</span>
+<span class="source-line-no">021</span><span id="line-21">import 
java.nio.charset.StandardCharsets;</span>
+<span class="source-line-no">022</span><span id="line-22">import 
java.util.Arrays;</span>
+<span class="source-line-no">023</span><span id="line-23">import 
java.util.logging.Level;</span>
+<span class="source-line-no">024</span><span id="line-24">import 
java.util.logging.Logger;</span>
+<span class="source-line-no">025</span><span id="line-25">import 
java.util.zip.InflaterInputStream;</span>
+<span class="source-line-no">026</span><span id="line-26"></span>
+<span class="source-line-no">027</span><span id="line-27">import 
org.apache.commons.imaging.ImagingException;</span>
+<span class="source-line-no">028</span><span id="line-28">import 
org.apache.commons.imaging.common.Allocator;</span>
+<span class="source-line-no">029</span><span id="line-29">import 
org.apache.commons.imaging.common.BinaryFunctions;</span>
+<span class="source-line-no">030</span><span id="line-30">import 
org.apache.commons.io.IOUtils;</span>
+<span class="source-line-no">031</span><span id="line-31"></span>
+<span class="source-line-no">032</span><span id="line-32">/**</span>
+<span class="source-line-no">033</span><span id="line-33"> * The PNG iCCP 
chunk. If "present, the image samples conform to the color space represented by 
the embedded ICC profile as defined by the International Color</span>
+<span class="source-line-no">034</span><span id="line-34"> * 
Consortium".</span>
+<span class="source-line-no">035</span><span id="line-35"> *</span>
+<span class="source-line-no">036</span><span id="line-36"> * @see &lt;a 
href="http://www.libpng.org/pub/png/spec/1.2/PNG-Chunks.html"&gt;PNG 
Specification&lt;/a&gt;</span>
+<span class="source-line-no">037</span><span id="line-37"> */</span>
+<span class="source-line-no">038</span><span id="line-38">public class 
PngChunkIccp extends PngChunk {</span>
+<span class="source-line-no">039</span><span id="line-39"></span>
+<span class="source-line-no">040</span><span id="line-40">    /*</span>
+<span class="source-line-no">041</span><span id="line-41">     * Logger.</span>
+<span class="source-line-no">042</span><span id="line-42">     */</span>
+<span class="source-line-no">043</span><span id="line-43">    private static 
final Logger LOGGER = Logger.getLogger(PngChunkIccp.class.getName());</span>
+<span class="source-line-no">044</span><span id="line-44"></span>
+<span class="source-line-no">045</span><span id="line-45">    /**</span>
+<span class="source-line-no">046</span><span id="line-46">     * ICC profile 
name.</span>
+<span class="source-line-no">047</span><span id="line-47">     */</span>
+<span class="source-line-no">048</span><span id="line-48">    private final 
String profileName;</span>
+<span class="source-line-no">049</span><span id="line-49"></span>
+<span class="source-line-no">050</span><span id="line-50">    /**</span>
+<span class="source-line-no">051</span><span id="line-51">     * Compression 
method.</span>
+<span class="source-line-no">052</span><span id="line-52">     */</span>
+<span class="source-line-no">053</span><span id="line-53">    private final 
int compressionMethod;</span>
+<span class="source-line-no">054</span><span id="line-54"></span>
+<span class="source-line-no">055</span><span id="line-55">    /**</span>
+<span class="source-line-no">056</span><span id="line-56">     * Compressed 
profile data.</span>
+<span class="source-line-no">057</span><span id="line-57">     */</span>
+<span class="source-line-no">058</span><span id="line-58">    private final 
byte[] compressedProfile;</span>
+<span class="source-line-no">059</span><span id="line-59"></span>
+<span class="source-line-no">060</span><span id="line-60">    /**</span>
+<span class="source-line-no">061</span><span id="line-61">     * Uncompressed 
profile data.</span>
+<span class="source-line-no">062</span><span id="line-62">     */</span>
+<span class="source-line-no">063</span><span id="line-63">    private final 
byte[] uncompressedProfile;</span>
+<span class="source-line-no">064</span><span id="line-64"></span>
+<span class="source-line-no">065</span><span id="line-65">    /**</span>
+<span class="source-line-no">066</span><span id="line-66">     * Constructs a 
new instance.</span>
+<span class="source-line-no">067</span><span id="line-67">     *</span>
+<span class="source-line-no">068</span><span id="line-68">     * @param length 
   chunk length</span>
+<span class="source-line-no">069</span><span id="line-69">     * @param 
chunkType chunk type</span>
+<span class="source-line-no">070</span><span id="line-70">     * @param crc    
   CRC computed over the chunk type and chunk data (but not the length)</span>
+<span class="source-line-no">071</span><span id="line-71">     * @param bytes  
   chunk data bytes</span>
+<span class="source-line-no">072</span><span id="line-72">     * @throws 
ImagingException when no profile name is present</span>
+<span class="source-line-no">073</span><span id="line-73">     * @throws 
IOException      when an error happens while reading the profile data</span>
+<span class="source-line-no">074</span><span id="line-74">     */</span>
+<span class="source-line-no">075</span><span id="line-75">    public 
PngChunkIccp(final int length, final int chunkType, final int crc, final byte[] 
bytes) throws ImagingException, IOException {</span>
+<span class="source-line-no">076</span><span id="line-76">        
super(length, chunkType, crc, bytes);</span>
+<span class="source-line-no">077</span><span id="line-77"></span>
+<span class="source-line-no">078</span><span id="line-78">        final int 
index = BinaryFunctions.findNull(bytes, "PngChunkIccp: No Profile Name");</span>
+<span class="source-line-no">079</span><span id="line-79">        final byte[] 
nameBytes = Arrays.copyOf(bytes, index);</span>
+<span class="source-line-no">080</span><span id="line-80">        profileName 
= new String(nameBytes, StandardCharsets.ISO_8859_1);</span>
+<span class="source-line-no">081</span><span id="line-81"></span>
+<span class="source-line-no">082</span><span id="line-82">        
compressionMethod = bytes[index + 1];</span>
+<span class="source-line-no">083</span><span id="line-83"></span>
+<span class="source-line-no">084</span><span id="line-84">        final int 
compressedProfileLength = bytes.length - (index + 1 + 1);</span>
+<span class="source-line-no">085</span><span id="line-85">        
compressedProfile = Allocator.byteArray(compressedProfileLength);</span>
+<span class="source-line-no">086</span><span id="line-86">        
System.arraycopy(bytes, index + 1 + 1, compressedProfile, 0, 
compressedProfileLength);</span>
+<span class="source-line-no">087</span><span id="line-87"></span>
+<span class="source-line-no">088</span><span id="line-88">        if 
(LOGGER.isLoggable(Level.FINEST)) {</span>
+<span class="source-line-no">089</span><span id="line-89">            
LOGGER.finest("ProfileName: " + profileName);</span>
+<span class="source-line-no">090</span><span id="line-90">            
LOGGER.finest("ProfileName.length(): " + profileName.length());</span>
+<span class="source-line-no">091</span><span id="line-91">            
LOGGER.finest("CompressionMethod: " + compressionMethod);</span>
+<span class="source-line-no">092</span><span id="line-92">            
LOGGER.finest("CompressedProfileLength: " + compressedProfileLength);</span>
+<span class="source-line-no">093</span><span id="line-93">            
LOGGER.finest("bytes.length: " + bytes.length);</span>
+<span class="source-line-no">094</span><span id="line-94">        }</span>
+<span class="source-line-no">095</span><span id="line-95"></span>
+<span class="source-line-no">096</span><span id="line-96">        
uncompressedProfile = IOUtils.toByteArray(new InflaterInputStream(new 
ByteArrayInputStream(compressedProfile)));</span>
+<span class="source-line-no">097</span><span id="line-97"></span>
+<span class="source-line-no">098</span><span id="line-98">        if 
(LOGGER.isLoggable(Level.FINEST)) {</span>
+<span class="source-line-no">099</span><span id="line-99">            
LOGGER.finest("UncompressedProfile: " + bytes.length);</span>
+<span class="source-line-no">100</span><span id="line-100">        }</span>
+<span class="source-line-no">101</span><span id="line-101">    }</span>
+<span class="source-line-no">102</span><span id="line-102"></span>
+<span class="source-line-no">103</span><span id="line-103">    public byte[] 
getCompressedProfile() {</span>
+<span class="source-line-no">104</span><span id="line-104">        return 
compressedProfile.clone();</span>
+<span class="source-line-no">105</span><span id="line-105">    }</span>
+<span class="source-line-no">106</span><span id="line-106"></span>
+<span class="source-line-no">107</span><span id="line-107">    public int 
getCompressionMethod() {</span>
+<span class="source-line-no">108</span><span id="line-108">        return 
compressionMethod;</span>
+<span class="source-line-no">109</span><span id="line-109">    }</span>
+<span class="source-line-no">110</span><span id="line-110"></span>
+<span class="source-line-no">111</span><span id="line-111">    public String 
getProfileName() {</span>
+<span class="source-line-no">112</span><span id="line-112">        return 
profileName;</span>
+<span class="source-line-no">113</span><span id="line-113">    }</span>
+<span class="source-line-no">114</span><span id="line-114"></span>
+<span class="source-line-no">115</span><span id="line-115">    /**</span>
+<span class="source-line-no">116</span><span id="line-116">     * Gets a copy 
of the uncompressed profile data.</span>
+<span class="source-line-no">117</span><span id="line-117">     *</span>
+<span class="source-line-no">118</span><span id="line-118">     * @return the 
uncompressed profile data</span>
+<span class="source-line-no">119</span><span id="line-119">     */</span>
+<span class="source-line-no">120</span><span id="line-120">    public byte[] 
getUncompressedProfile() {</span>
+<span class="source-line-no">121</span><span id="line-121">        return 
uncompressedProfile.clone();</span>
+<span class="source-line-no">122</span><span id="line-122">    }</span>
+<span class="source-line-no">123</span><span id="line-123"></span>
+<span class="source-line-no">124</span><span id="line-124">}</span>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</main>
+</body>
+</html>
\ No newline at end of file

Added: 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkIdat.html
==============================================================================
--- 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkIdat.html
 (added)
+++ 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkIdat.html
 Wed May 15 13:26:03 2024
@@ -0,0 +1,102 @@
+<!DOCTYPE HTML>
+<html lang="en">
+<head>
+<!-- Generated by javadoc (17) -->
+<title>Source code</title>
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta name="description" content="source: package: 
org.apache.commons.imaging.formats.png.chunks, class: PngChunkIdat">
+<meta name="generator" content="javadoc/SourceToHTMLConverter">
+<link rel="stylesheet" type="text/css" 
href="../../../../../../../../stylesheet.css" title="Style">
+</head>
+<body class="source-page">
+<main role="main">
+<div class="source-container">
+<pre><span class="source-line-no">001</span><span id="line-1">/*</span>
+<span class="source-line-no">002</span><span id="line-2"> * Licensed to the 
Apache Software Foundation (ASF) under one or more</span>
+<span class="source-line-no">003</span><span id="line-3"> * contributor 
license agreements.  See the NOTICE file distributed with</span>
+<span class="source-line-no">004</span><span id="line-4"> * this work for 
additional information regarding copyright ownership.</span>
+<span class="source-line-no">005</span><span id="line-5"> * The ASF licenses 
this file to You under the Apache License, Version 2.0</span>
+<span class="source-line-no">006</span><span id="line-6"> * (the "License"); 
you may not use this file except in compliance with</span>
+<span class="source-line-no">007</span><span id="line-7"> * the License.  You 
may obtain a copy of the License at</span>
+<span class="source-line-no">008</span><span id="line-8"> *</span>
+<span class="source-line-no">009</span><span id="line-9"> *      
http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="source-line-no">010</span><span id="line-10"> *</span>
+<span class="source-line-no">011</span><span id="line-11"> * Unless required 
by applicable law or agreed to in writing, software</span>
+<span class="source-line-no">012</span><span id="line-12"> * distributed under 
the License is distributed on an "AS IS" BASIS,</span>
+<span class="source-line-no">013</span><span id="line-13"> * WITHOUT 
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
+<span class="source-line-no">014</span><span id="line-14"> * See the License 
for the specific language governing permissions and</span>
+<span class="source-line-no">015</span><span id="line-15"> * limitations under 
the License.</span>
+<span class="source-line-no">016</span><span id="line-16"> */</span>
+<span class="source-line-no">017</span><span id="line-17">package 
org.apache.commons.imaging.formats.png.chunks;</span>
+<span class="source-line-no">018</span><span id="line-18"></span>
+<span class="source-line-no">019</span><span id="line-19">public class 
PngChunkIdat extends PngChunk {</span>
+<span class="source-line-no">020</span><span id="line-20"></span>
+<span class="source-line-no">021</span><span id="line-21">    public 
PngChunkIdat(final int length, final int chunkType, final int crc, final byte[] 
bytes) {</span>
+<span class="source-line-no">022</span><span id="line-22">        
super(length, chunkType, crc, bytes);</span>
+<span class="source-line-no">023</span><span id="line-23">    }</span>
+<span class="source-line-no">024</span><span id="line-24">}</span>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</main>
+</body>
+</html>
\ No newline at end of file

Added: 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkIhdr.html
==============================================================================
--- 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkIhdr.html
 (added)
+++ 
websites/production/commons/content/proper/commons-imaging/apidocs/src-html/org/apache/commons/imaging/formats/png/chunks/PngChunkIhdr.html
 Wed May 15 13:26:03 2024
@@ -0,0 +1,165 @@
+<!DOCTYPE HTML>
+<html lang="en">
+<head>
+<!-- Generated by javadoc (17) -->
+<title>Source code</title>
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta name="description" content="source: package: 
org.apache.commons.imaging.formats.png.chunks, class: PngChunkIhdr">
+<meta name="generator" content="javadoc/SourceToHTMLConverter">
+<link rel="stylesheet" type="text/css" 
href="../../../../../../../../stylesheet.css" title="Style">
+</head>
+<body class="source-page">
+<main role="main">
+<div class="source-container">
+<pre><span class="source-line-no">001</span><span id="line-1">/*</span>
+<span class="source-line-no">002</span><span id="line-2"> * Licensed to the 
Apache Software Foundation (ASF) under one or more</span>
+<span class="source-line-no">003</span><span id="line-3"> * contributor 
license agreements.  See the NOTICE file distributed with</span>
+<span class="source-line-no">004</span><span id="line-4"> * this work for 
additional information regarding copyright ownership.</span>
+<span class="source-line-no">005</span><span id="line-5"> * The ASF licenses 
this file to You under the Apache License, Version 2.0</span>
+<span class="source-line-no">006</span><span id="line-6"> * (the "License"); 
you may not use this file except in compliance with</span>
+<span class="source-line-no">007</span><span id="line-7"> * the License.  You 
may obtain a copy of the License at</span>
+<span class="source-line-no">008</span><span id="line-8"> *</span>
+<span class="source-line-no">009</span><span id="line-9"> *      
http://www.apache.org/licenses/LICENSE-2.0</span>
+<span class="source-line-no">010</span><span id="line-10"> *</span>
+<span class="source-line-no">011</span><span id="line-11"> * Unless required 
by applicable law or agreed to in writing, software</span>
+<span class="source-line-no">012</span><span id="line-12"> * distributed under 
the License is distributed on an "AS IS" BASIS,</span>
+<span class="source-line-no">013</span><span id="line-13"> * WITHOUT 
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
+<span class="source-line-no">014</span><span id="line-14"> * See the License 
for the specific language governing permissions and</span>
+<span class="source-line-no">015</span><span id="line-15"> * limitations under 
the License.</span>
+<span class="source-line-no">016</span><span id="line-16"> */</span>
+<span class="source-line-no">017</span><span id="line-17">package 
org.apache.commons.imaging.formats.png.chunks;</span>
+<span class="source-line-no">018</span><span id="line-18"></span>
+<span class="source-line-no">019</span><span id="line-19">import static 
org.apache.commons.imaging.common.BinaryFunctions.read4Bytes;</span>
+<span class="source-line-no">020</span><span id="line-20">import static 
org.apache.commons.imaging.common.BinaryFunctions.readByte;</span>
+<span class="source-line-no">021</span><span id="line-21"></span>
+<span class="source-line-no">022</span><span id="line-22">import 
java.io.ByteArrayInputStream;</span>
+<span class="source-line-no">023</span><span id="line-23">import 
java.io.IOException;</span>
+<span class="source-line-no">024</span><span id="line-24"></span>
+<span class="source-line-no">025</span><span id="line-25">import 
org.apache.commons.imaging.ImagingException;</span>
+<span class="source-line-no">026</span><span id="line-26">import 
org.apache.commons.imaging.formats.png.InterlaceMethod;</span>
+<span class="source-line-no">027</span><span id="line-27">import 
org.apache.commons.imaging.formats.png.PngColorType;</span>
+<span class="source-line-no">028</span><span id="line-28"></span>
+<span class="source-line-no">029</span><span id="line-29">public class 
PngChunkIhdr extends PngChunk {</span>
+<span class="source-line-no">030</span><span id="line-30"></span>
+<span class="source-line-no">031</span><span id="line-31">    private final 
int width;</span>
+<span class="source-line-no">032</span><span id="line-32">    private final 
int height;</span>
+<span class="source-line-no">033</span><span id="line-33">    private final 
int bitDepth;</span>
+<span class="source-line-no">034</span><span id="line-34">    private final 
PngColorType pngColorType;</span>
+<span class="source-line-no">035</span><span id="line-35">    private final 
int compressionMethod;</span>
+<span class="source-line-no">036</span><span id="line-36">    private final 
int filterMethod;</span>
+<span class="source-line-no">037</span><span id="line-37">    private final 
InterlaceMethod interlaceMethod;</span>
+<span class="source-line-no">038</span><span id="line-38"></span>
+<span class="source-line-no">039</span><span id="line-39">    public 
PngChunkIhdr(final int length, final int chunkType, final int crc, final byte[] 
bytes) throws ImagingException, IOException {</span>
+<span class="source-line-no">040</span><span id="line-40">        
super(length, chunkType, crc, bytes);</span>
+<span class="source-line-no">041</span><span id="line-41"></span>
+<span class="source-line-no">042</span><span id="line-42">        final 
ByteArrayInputStream is = new ByteArrayInputStream(bytes);</span>
+<span class="source-line-no">043</span><span id="line-43">        width = 
read4Bytes("Width", is, "Not a Valid PNG File: IHDR Corrupt", 
getByteOrder());</span>
+<span class="source-line-no">044</span><span id="line-44">        height = 
read4Bytes("Height", is, "Not a Valid PNG File: IHDR Corrupt", 
getByteOrder());</span>
+<span class="source-line-no">045</span><span id="line-45">        bitDepth = 
readByte("BitDepth", is, "Not a Valid PNG File: IHDR Corrupt");</span>
+<span class="source-line-no">046</span><span id="line-46">        final int 
type = readByte("ColorType", is, "Not a Valid PNG File: IHDR Corrupt");</span>
+<span class="source-line-no">047</span><span id="line-47">        pngColorType 
= PngColorType.getColorType(type);</span>
+<span class="source-line-no">048</span><span id="line-48">        if 
(getPngColorType() == null) {</span>
+<span class="source-line-no">049</span><span id="line-49">            throw 
new ImagingException("PNG: unknown color type: " + type);</span>
+<span class="source-line-no">050</span><span id="line-50">        }</span>
+<span class="source-line-no">051</span><span id="line-51">        
compressionMethod = readByte("CompressionMethod", is, "Not a Valid PNG File: 
IHDR Corrupt");</span>
+<span class="source-line-no">052</span><span id="line-52">        filterMethod 
= readByte("FilterMethod", is, "Not a Valid PNG File: IHDR Corrupt");</span>
+<span class="source-line-no">053</span><span id="line-53">        final int 
method = readByte("InterlaceMethod", is, "Not a Valid PNG File: IHDR 
Corrupt");</span>
+<span class="source-line-no">054</span><span id="line-54">        if (method 
&lt; 0 || method &gt;= InterlaceMethod.values().length) {</span>
+<span class="source-line-no">055</span><span id="line-55">            throw 
new ImagingException("PNG: unknown interlace method: " + method);</span>
+<span class="source-line-no">056</span><span id="line-56">        }</span>
+<span class="source-line-no">057</span><span id="line-57">        
interlaceMethod = InterlaceMethod.values()[method];</span>
+<span class="source-line-no">058</span><span id="line-58">    }</span>
+<span class="source-line-no">059</span><span id="line-59"></span>
+<span class="source-line-no">060</span><span id="line-60">    public int 
getBitDepth() {</span>
+<span class="source-line-no">061</span><span id="line-61">        return 
bitDepth;</span>
+<span class="source-line-no">062</span><span id="line-62">    }</span>
+<span class="source-line-no">063</span><span id="line-63"></span>
+<span class="source-line-no">064</span><span id="line-64">    public int 
getCompressionMethod() {</span>
+<span class="source-line-no">065</span><span id="line-65">        return 
compressionMethod;</span>
+<span class="source-line-no">066</span><span id="line-66">    }</span>
+<span class="source-line-no">067</span><span id="line-67"></span>
+<span class="source-line-no">068</span><span id="line-68">    public int 
getFilterMethod() {</span>
+<span class="source-line-no">069</span><span id="line-69">        return 
filterMethod;</span>
+<span class="source-line-no">070</span><span id="line-70">    }</span>
+<span class="source-line-no">071</span><span id="line-71"></span>
+<span class="source-line-no">072</span><span id="line-72">    public int 
getHeight() {</span>
+<span class="source-line-no">073</span><span id="line-73">        return 
height;</span>
+<span class="source-line-no">074</span><span id="line-74">    }</span>
+<span class="source-line-no">075</span><span id="line-75"></span>
+<span class="source-line-no">076</span><span id="line-76">    public 
InterlaceMethod getInterlaceMethod() {</span>
+<span class="source-line-no">077</span><span id="line-77">        return 
interlaceMethod;</span>
+<span class="source-line-no">078</span><span id="line-78">    }</span>
+<span class="source-line-no">079</span><span id="line-79"></span>
+<span class="source-line-no">080</span><span id="line-80">    public 
PngColorType getPngColorType() {</span>
+<span class="source-line-no">081</span><span id="line-81">        return 
pngColorType;</span>
+<span class="source-line-no">082</span><span id="line-82">    }</span>
+<span class="source-line-no">083</span><span id="line-83"></span>
+<span class="source-line-no">084</span><span id="line-84">    public int 
getWidth() {</span>
+<span class="source-line-no">085</span><span id="line-85">        return 
width;</span>
+<span class="source-line-no">086</span><span id="line-86">    }</span>
+<span class="source-line-no">087</span><span id="line-87">}</span>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</pre>
+</div>
+</main>
+</body>
+</html>
\ No newline at end of file


Reply via email to