You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by da...@apache.org on 2012/03/17 10:53:14 UTC
svn commit: r1301904 - in
/commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan:
SanselanConstants.java formats/tiff/TiffDirectory.java
formats/tiff/TiffImageMetadata.java formats/tiff/TiffImageParser.java
Author: damjan
Date: Sat Mar 17 09:53:14 2012
New Revision: 1301904
URL: http://svn.apache.org/viewvc?rev=1301904&view=rev
Log:
Eliminate the byte order parameter.
Modified:
commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/SanselanConstants.java
commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffDirectory.java
commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageMetadata.java
commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageParser.java
Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/SanselanConstants.java
URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/SanselanConstants.java?rev=1301904&r1=1301903&r2=1301904&view=diff
==============================================================================
--- commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/SanselanConstants.java (original)
+++ commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/SanselanConstants.java Sat Mar 17 09:53:14 2012
@@ -123,12 +123,4 @@ public interface SanselanConstants
* Valid values: PixelDensity
*/
public static final String PARAM_KEY_PIXEL_DENSITY = "PIXEL_DENSITY";
-
- /**
- * Parameter key. Used in Tiff operations to use the byte order
- * of the Tiff image.
- * <p>
- * Valid values: any Integer
- */
- public static final String BYTE_ORDER = "BYTE_ORDER";
}
Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffDirectory.java
URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffDirectory.java?rev=1301904&r1=1301903&r2=1301904&view=diff
==============================================================================
--- commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffDirectory.java (original)
+++ commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffDirectory.java Sat Mar 17 09:53:14 2012
@@ -152,19 +152,19 @@ public class TiffDirectory extends TiffE
return false;
}
- public BufferedImage getTiffImage() throws ImageReadException, IOException
+ public BufferedImage getTiffImage(int byteOrder) throws ImageReadException, IOException
{
Map params = null;
- return getTiffImage(params);
+ return getTiffImage(byteOrder, params);
}
- public BufferedImage getTiffImage(Map params) throws ImageReadException,
+ public BufferedImage getTiffImage(int byteOrder, Map params) throws ImageReadException,
IOException
{
if (null == tiffImageData)
return null;
- return new TiffImageParser().getBufferedImage(this, params);
+ return new TiffImageParser().getBufferedImage(this, byteOrder, params);
}
public TiffField findField(TagInfo tag) throws ImageReadException
Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageMetadata.java
URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageMetadata.java?rev=1301904&r1=1301903&r2=1301904&view=diff
==============================================================================
--- commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageMetadata.java (original)
+++ commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageMetadata.java Sat Mar 17 09:53:14 2012
@@ -87,11 +87,13 @@ public class TiffImageMetadata extends I
public final int type;
private final TiffDirectory directory;
+ private final int byteOrder;
- public Directory(final TiffDirectory directory)
+ public Directory(int byteOrder, final TiffDirectory directory)
{
this.type = directory.type;
this.directory = directory;
+ this.byteOrder = byteOrder;
}
public void add(TiffField entry)
@@ -102,7 +104,7 @@ public class TiffImageMetadata extends I
public BufferedImage getThumbnail() throws ImageReadException,
IOException
{
- return directory.getTiffImage();
+ return directory.getTiffImage(byteOrder);
}
public TiffImageData getTiffImageData()
Modified: commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageParser.java
URL: http://svn.apache.org/viewvc/commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageParser.java?rev=1301904&r1=1301903&r2=1301904&view=diff
==============================================================================
--- commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageParser.java (original)
+++ commons/proper/sanselan/trunk/src/main/java/org/apache/commons/sanselan/formats/tiff/TiffImageParser.java Sat Mar 17 09:53:14 2012
@@ -130,7 +130,8 @@ public class TiffImageParser extends Ima
throws ImageReadException, IOException
{
FormatCompliance formatCompliance = FormatCompliance.getDefault();
- TiffContents contents = new TiffReader(isStrict(params)).readContents(
+ TiffReader tiffReader = new TiffReader(isStrict(params));
+ TiffContents contents = tiffReader.readContents(
byteSource, params, formatCompliance);
List<TiffDirectory> directories = contents.directories;
@@ -141,7 +142,7 @@ public class TiffImageParser extends Ima
{
TiffDirectory dir = directories.get(i);
- TiffImageMetadata.Directory metadataDirectory = new TiffImageMetadata.Directory(dir);
+ TiffImageMetadata.Directory metadataDirectory = new TiffImageMetadata.Directory(tiffReader.getByteOrder(), dir);
List<TiffField> entries = dir.getDirectoryEntrys();
@@ -446,11 +447,7 @@ public class TiffImageParser extends Ima
int byteOrder = reader.getByteOrder();
TiffContents contents = reader.readFirstDirectory(byteSource, params, true, formatCompliance);
TiffDirectory directory = contents.directories.get(0);
- if(params == null) {
- params = new HashMap<String, Integer>();
- }
- params.put(BYTE_ORDER, byteOrder);
- BufferedImage result = directory.getTiffImage(params);
+ BufferedImage result = directory.getTiffImage(byteOrder, params);
if (null == result)
throw new ImageReadException("TIFF does not contain an image.");
return result;
@@ -460,12 +457,13 @@ public class TiffImageParser extends Ima
throws ImageReadException, IOException
{
FormatCompliance formatCompliance = FormatCompliance.getDefault();
- TiffContents contents = new TiffReader(true).readDirectories(byteSource, true, formatCompliance);
+ TiffReader tiffReader = new TiffReader(true);
+ TiffContents contents = tiffReader.readDirectories(byteSource, true, formatCompliance);
List<BufferedImage> results = new ArrayList<BufferedImage>();
for (int i = 0; i < contents.directories.size(); i++)
{
TiffDirectory directory = contents.directories.get(i);
- BufferedImage result = directory.getTiffImage(null);
+ BufferedImage result = directory.getTiffImage(tiffReader.getByteOrder(), null);
if (result != null)
{
results.add(result);
@@ -474,21 +472,11 @@ public class TiffImageParser extends Ima
return results;
}
- protected BufferedImage getBufferedImage(TiffDirectory directory, Map params)
+ protected BufferedImage getBufferedImage(TiffDirectory directory, int byteOrder, Map params)
throws ImageReadException, IOException
{
List<TiffField> entries = directory.entries;
- int byteOrder = BYTE_ORDER_LITTLE_ENDIAN; //taking little endian to be default
- if(params != null){
- if(params.containsKey(BYTE_ORDER)) {
- Object obj = params.get(BYTE_ORDER);
- if(obj instanceof Integer) {
- Integer a = (Integer)obj;
- byteOrder = a.intValue();
- }
- }
- }
if (entries == null)
throw new ImageReadException("TIFF missing entries");