Author: jeremias
Date: Tue Jun 21 15:07:50 2011
New Revision: 1138036
URL: http://svn.apache.org/viewvc?rev=1138036&view=rev
Log:
Fixed regression introduced by rev 1137971:
Bi-level images that are generated as page segments and don't need to be
resampled produced garbled output because the size of the image data got set to
wrong values.
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/render/afp/AFPImageHandlerRenderedImage.java
Modified:
xmlgraphics/fop/trunk/src/java/org/apache/fop/render/afp/AFPImageHandlerRenderedImage.java
URL:
http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/render/afp/AFPImageHandlerRenderedImage.java?rev=1138036&r1=1138035&r2=1138036&view=diff
==============================================================================
---
xmlgraphics/fop/trunk/src/java/org/apache/fop/render/afp/AFPImageHandlerRenderedImage.java
(original)
+++
xmlgraphics/fop/trunk/src/java/org/apache/fop/render/afp/AFPImageHandlerRenderedImage.java
Tue Jun 21 15:07:50 2011
@@ -151,6 +151,7 @@ public class AFPImageHandlerRenderedImag
private boolean useFS10;
private int maxPixelSize;
private boolean usePageSegments;
+ private boolean resample;
private Dimension resampledDim;
private ImageSize intrinsicSize;
private ImageSize effIntrinsicSize;
@@ -187,8 +188,14 @@ public class AFPImageHandlerRenderedImag
(int)Math.ceil(UnitConv.mpt2px(targetSize.getWidth(),
resolution)),
(int)Math.ceil(UnitConv.mpt2px(targetSize.getHeight(),
resolution)));
resourceInfo.setImageDimension(resampledDim);
- effIntrinsicSize = new ImageSize(
- resampledDim.width, resampledDim.height, resolution);
+ //Only resample/downsample if image is smaller than its
intrinsic size
+ //to make print file smaller
+ this.resample = resampledDim.width < renderedImage.getWidth()
+ && resampledDim.height < renderedImage.getHeight();
+ if (resample) {
+ effIntrinsicSize = new ImageSize(
+ resampledDim.width, resampledDim.height,
resolution);
+ }
}
//Update image object info
@@ -221,11 +228,7 @@ public class AFPImageHandlerRenderedImag
imageObjectInfo.setCreatePageSegment(true);
float ditheringQuality = paintingState.getDitheringQuality();
- //Only resample/downsample if image is smaller than its
intrinsic size
- //to make print file smaller
- boolean resample = resampledDim.width <
renderedImage.getWidth()
- && resampledDim.height < renderedImage.getHeight();
- if (resample) {
+ if (this.resample) {
if (log.isDebugEnabled()) {
log.debug("Resample from " +
intrinsicSize.getDimensionPx()
+ " to " + resampledDim);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]