You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by eb...@apache.org on 2013/11/26 14:50:44 UTC
svn commit: r1545655 - in
/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging:
common/ formats/png/ formats/png/chunks/
Author: ebourg
Date: Tue Nov 26 13:50:44 2013
New Revision: 1545655
URL: http://svn.apache.org/r1545655
Log:
Removed ZLibUtils
Removed:
commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/common/ZLibUtils.java
Modified:
commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java
commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.java
commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.java
commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.java
Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java?rev=1545655&r1=1545654&r2=1545655&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/PngWriter.java Tue Nov 26 13:50:44 2013
@@ -29,11 +29,11 @@ import java.util.zip.DeflaterOutputStrea
import org.apache.commons.imaging.ImageWriteException;
import org.apache.commons.imaging.ImagingConstants;
import org.apache.commons.imaging.PixelDensity;
-import org.apache.commons.imaging.common.ZLibUtils;
import org.apache.commons.imaging.palette.Palette;
import org.apache.commons.imaging.palette.PaletteFactory;
import org.apache.commons.imaging.palette.SimplePalette;
import org.apache.commons.imaging.util.Debug;
+import org.apache.commons.imaging.util.IoUtils;
public class PngWriter {
private final boolean verbose;
@@ -152,7 +152,7 @@ public class PngWriter {
baos.write(text.translatedKeyword.getBytes("utf-8"));
baos.write(0);
- baos.write(new ZLibUtils().deflate(text.text.getBytes("utf-8")));
+ baos.write(deflate(text.text.getBytes("utf-8")));
writeChunk(os, PngConstants.iTXt_CHUNK_TYPE.toByteArray(), baos.toByteArray());
}
@@ -176,7 +176,7 @@ public class PngWriter {
baos.write(PngConstants.COMPRESSION_DEFLATE_INFLATE);
// text
- baos.write(new ZLibUtils().deflate(text.text.getBytes("ISO-8859-1")));
+ baos.write(deflate(text.text.getBytes("ISO-8859-1")));
writeChunk(os, PngConstants.zTXt_CHUNK_TYPE.toByteArray(), baos.toByteArray());
}
@@ -202,6 +202,19 @@ public class PngWriter {
writeChunk(os, PngConstants.tEXt_CHUNK_TYPE.toByteArray(), baos.toByteArray());
}
+ public final byte[] deflate(final byte bytes[]) throws IOException {
+ final ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ final DeflaterOutputStream dos = new DeflaterOutputStream(baos);
+ boolean canThrow = false;
+ try {
+ dos.write(bytes);
+ canThrow = true;
+ } finally {
+ IoUtils.closeQuietly(canThrow, dos);
+ }
+ return baos.toByteArray();
+ }
+
private boolean isValidISO_8859_1(final String s) {
try {
final String roundtrip = new String(s.getBytes("ISO-8859-1"), "ISO-8859-1");
@@ -230,7 +243,7 @@ public class PngWriter {
baos.write(PngConstants.XMP_KEYWORD.getBytes("utf-8"));
baos.write(0);
- baos.write(new ZLibUtils().deflate(xmpXml.getBytes("utf-8")));
+ baos.write(deflate(xmpXml.getBytes("utf-8")));
writeChunk(os, PngConstants.iTXt_CHUNK_TYPE.toByteArray(), baos.toByteArray());
}
Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.java?rev=1545655&r1=1545654&r2=1545655&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkIccp.java Tue Nov 26 13:50:44 2013
@@ -16,10 +16,12 @@
*/
package org.apache.commons.imaging.formats.png.chunks;
+import java.io.ByteArrayInputStream;
import java.io.IOException;
+import java.util.zip.InflaterInputStream;
import org.apache.commons.imaging.ImageReadException;
-import org.apache.commons.imaging.common.ZLibUtils;
+import org.apache.commons.imaging.common.BinaryFunctions;
public class PngChunkIccp extends PngChunk {
// private final PngImageParser parser;
@@ -60,7 +62,8 @@ public class PngChunkIccp extends PngChu
System.out.println("bytes.length: " + bytes.length);
}
- UncompressedProfile = new ZLibUtils().inflate(CompressedProfile);
+ UncompressedProfile = BinaryFunctions.getStreamBytes(
+ new InflaterInputStream(new ByteArrayInputStream(CompressedProfile)));
if (getDebug()) {
System.out.println("UncompressedProfile: " + Integer.toString(bytes.length));
Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.java?rev=1545655&r1=1545654&r2=1545655&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkItxt.java Tue Nov 26 13:50:44 2013
@@ -16,10 +16,12 @@
*/
package org.apache.commons.imaging.formats.png.chunks;
+import java.io.ByteArrayInputStream;
import java.io.IOException;
+import java.util.zip.InflaterInputStream;
import org.apache.commons.imaging.ImageReadException;
-import org.apache.commons.imaging.common.ZLibUtils;
+import org.apache.commons.imaging.common.BinaryFunctions;
import org.apache.commons.imaging.formats.png.PngConstants;
import org.apache.commons.imaging.formats.png.PngText;
@@ -92,7 +94,7 @@ public class PngChunkItxt extends PngTex
System.arraycopy(bytes, index, compressedText, 0,
compressedTextLength);
- text = new String(new ZLibUtils().inflate(compressedText),
+ text = new String(BinaryFunctions.getStreamBytes(new InflaterInputStream(new ByteArrayInputStream(bytes))),
"utf-8");
} else {
Modified: commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.java
URL: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.java?rev=1545655&r1=1545654&r2=1545655&view=diff
==============================================================================
--- commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.java (original)
+++ commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/png/chunks/PngChunkZtxt.java Tue Nov 26 13:50:44 2013
@@ -16,10 +16,12 @@
*/
package org.apache.commons.imaging.formats.png.chunks;
+import java.io.ByteArrayInputStream;
import java.io.IOException;
+import java.util.zip.InflaterInputStream;
import org.apache.commons.imaging.ImageReadException;
-import org.apache.commons.imaging.common.ZLibUtils;
+import org.apache.commons.imaging.common.BinaryFunctions;
import org.apache.commons.imaging.formats.png.PngConstants;
import org.apache.commons.imaging.formats.png.PngText;
@@ -49,11 +51,9 @@ public class PngChunkZtxt extends PngTex
final int compressedTextLength = bytes.length - index;
final byte compressedText[] = new byte[compressedTextLength];
- System.arraycopy(bytes, index, compressedText, 0,
- compressedTextLength);
+ System.arraycopy(bytes, index, compressedText, 0, compressedTextLength);
- text = new String(new ZLibUtils().inflate(compressedText),
- "ISO-8859-1");
+ text = new String(BinaryFunctions.getStreamBytes(new InflaterInputStream(new ByteArrayInputStream(compressedText))), "ISO-8859-1");
}
/**