I was fighting the same problem all day long today. My goal was similar to yours: I want to export 300 DPI JPG image to Excel (I use JExcelApiExporter) and want that Excel file stores unchanged JPG which will be scaled by Excel when it is displayed on screen in low-DPI (72 or 96) but will be sent to printer in original 300-DPI (so it will be printed with good quality too). It is absolutely possible with Excel file format - I tested it with manually created file. In other words: I have the 100*100 pixels (in terms of Jasper/iReport coordinate system) box for the image in desing file and I have ~400*400 pixels JPG file to place into the box. I found that JExcelApiExporter doesn't provide any way to export unchanged JPG into Excel - it always resize the image to be 100*100 (and it doesn't matter which scaleImage you use - scaleImage="RetainShape" also resizes) . But I found the workaround. I little changed method exportImage() of JExcelApiExporter: my version looks like: WritableImage image = new WritableImage( col - emptyCols, row, gridCell.getColSpan(), isCollapseRowSpan ? 1 : gridCell.getRowSpan(), renderer.getImageData() // FIX: this is a single important change // was: JRImageLoader.loadImageDataFromAWTImage(bi, JRRenderable.IMAGE_TYPE_PNG) ); so I never export image redrawn on 100*100 canvas by Java2D - original (unchanged) file is always exported. PS. Unfortunally (because of private access to some members/methods) I couldn't only extend my own Exporter from JExcelApiExporter and override only exportImage() - I had to copy the whole sources of JExcelApiExporter to my class for fixing just one line of code :( PS2. JasperReports 3.7.1 (But I tried in 3.7.3 too - the same problem) Post Edited by viy75 at 06/25/2010 20:32 Post Edited by viy75 at 06/25/2010 20:34