You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-dev@xmlgraphics.apache.org by de...@apache.org on 2003/03/04 22:24:26 UTC
cvs commit: xml-batik/sources/org/apache/batik/transcoder SVGAbstractTranscoder.java
deweese 2003/03/04 13:24:26
Modified: sources/org/apache/batik/transcoder/image
JPEGTranscoder.java
sources/org/apache/batik/transcoder/print
PrintTranscoder.java
sources/org/apache/batik/transcoder
SVGAbstractTranscoder.java
Log:
JPEG files now have X/YDensity set according to -dpi option.
There is a potential fix for the off by 1.333 commented out in the
PrintTranscoder (since I can't print to test the fix).
Revision Changes Path
1.6 +6 -1 xml-batik/sources/org/apache/batik/transcoder/image/JPEGTranscoder.java
Index: JPEGTranscoder.java
===================================================================
RCS file: /home/cvs/xml-batik/sources/org/apache/batik/transcoder/image/JPEGTranscoder.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- JPEGTranscoder.java 12 Nov 2001 15:37:22 -0000 1.5
+++ JPEGTranscoder.java 4 Mar 2003 21:24:25 -0000 1.6
@@ -76,6 +76,11 @@
JPEGImageEncoder jpegEncoder = JPEGCodec.createJPEGEncoder(ostream);
JPEGEncodeParam params = JPEGCodec.getDefaultJPEGEncodeParam(img);
params.setQuality(quality, true);
+ float PixSzMM = userAgent.getPixelUnitToMillimeter();
+ int PixSzInch = (int)(25.4/PixSzMM+0.5);
+ params.setDensityUnit(JPEGEncodeParam.DENSITY_UNIT_DOTS_INCH);
+ params.setXDensity(PixSzInch);
+ params.setYDensity(PixSzInch);
jpegEncoder.encode(img, params);
} catch (IOException ex) {
throw new TranscoderException(ex);
1.24 +16 -5 xml-batik/sources/org/apache/batik/transcoder/print/PrintTranscoder.java
Index: PrintTranscoder.java
===================================================================
RCS file: /home/cvs/xml-batik/sources/org/apache/batik/transcoder/print/PrintTranscoder.java,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- PrintTranscoder.java 5 Jun 2002 21:14:48 -0000 1.23
+++ PrintTranscoder.java 4 Mar 2003 21:24:25 -0000 1.24
@@ -289,12 +289,23 @@
// Check hint to know if scaling is really needed
Boolean scaleToPage = (Boolean)hints.get(KEY_SCALE_TO_PAGE);
- if(scaleToPage != null && !scaleToPage.booleanValue()){
+ if(scaleToPage != null && !scaleToPage.booleanValue()) {
+ /** I think should fix the off by 1.3333x bug
+ but since I can't print right now I'm leaving
+ commented out.
+ float pixSzMM = userAgent.getPixelUnitToMillimeter();
+ float pixSzInch = (25.4/pixSzMM);
+ // Printing Graphics is always set up for 72dpi, so
+ // scale to user request.
+ scale = 72/pixSzInch;
+ ***/
scale = 1;
}
- double xMargin = (pageFormat.getImageableWidth() - bounds.getWidth()*scale)/2;
- double yMargin = (pageFormat.getImageableHeight() - bounds.getHeight()*scale)/2;
+ double xMargin = (pageFormat.getImageableWidth() -
+ bounds.getWidth()*scale)/2;
+ double yMargin = (pageFormat.getImageableHeight() -
+ bounds.getHeight()*scale)/2;
g.translate(pageFormat.getImageableX() + xMargin,
pageFormat.getImageableY() + yMargin);
g.scale(scale, scale);
@@ -628,7 +639,7 @@
// Pixel to millimeter
setTranscoderFloatHint(transcoder,
KEY_PIXEL_TO_MM_STR,
- KEY_PIXEL_TO_MM);
+ KEY_PIXEL_UNIT_TO_MILLIMETER);
// Page orientation
setTranscoderStringHint(transcoder,
1.6 +2 -2 xml-batik/sources/org/apache/batik/transcoder/SVGAbstractTranscoder.java
Index: SVGAbstractTranscoder.java
===================================================================
RCS file: /home/cvs/xml-batik/sources/org/apache/batik/transcoder/SVGAbstractTranscoder.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- SVGAbstractTranscoder.java 4 Mar 2003 12:11:59 -0000 1.5
+++ SVGAbstractTranscoder.java 4 Mar 2003 21:24:25 -0000 1.6
@@ -586,7 +586,7 @@
/**
* The pixel to millimeter conversion factor key.
* @deprecated As of Batik Version 1.5b3
- * @see #KEY_MM_PER_PIXEL
+ * @see #KEY_PIXEL_UNIT_TO_MILLIMETER
*
* <TABLE BORDER="0" CELLSPACING="0" CELLPADDING="1">
* <TR>
---------------------------------------------------------------------
To unsubscribe, e-mail: batik-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: batik-dev-help@xml.apache.org