Index: sources/org/apache/batik/transcoder/image/ImageTranscoder.java
===================================================================
--- sources/org/apache/batik/transcoder/image/ImageTranscoder.java	(revision 610127)
+++ sources/org/apache/batik/transcoder/image/ImageTranscoder.java	(working copy)
@@ -28,6 +28,8 @@
 import java.awt.image.DataBufferInt;
 import java.awt.image.SinglePixelPackedSampleModel;
 
+import org.w3c.dom.Document;
+
 import org.apache.batik.ext.awt.image.GraphicsUtil;
 import org.apache.batik.gvt.renderer.ConcreteImageRendererFactory;
 import org.apache.batik.gvt.renderer.ImageRenderer;
@@ -38,7 +40,6 @@
 import org.apache.batik.transcoder.TranscodingHints;
 import org.apache.batik.transcoder.keys.BooleanKey;
 import org.apache.batik.transcoder.keys.PaintKey;
-import org.w3c.dom.Document;
 
 /**
  * This class enables to transcode an input to an image of any format.
@@ -92,8 +93,12 @@
         super.transcode(document, uri, output);
 
         // prepare the image to be painted
-        int w = (int)(width+0.5);
-        int h = (int)(height+0.5);
+        double resolutionFactor = 25.4f / userAgent.getPixelUnitToMillimeter() / 72;
+        int w = (int)((width * resolutionFactor) + 0.5);
+        int h = (int)((height * resolutionFactor) + 0.5);
+        if (resolutionFactor != 1.0) {
+            curTxf.scale(resolutionFactor, resolutionFactor);
+        }
 
         // paint the SVG document using the bridge package
         // create the appropriate renderer
