# Tiff - wo kann ich Auflösung und Farbtiefe einstellen?



## aldi15 (23. Jan 2009)

Hallo alle zusammen, ich wälze gerade folgendes Problemchen:
ich habe ein Image, das ich verkleinere durch ein resampling. Das Image wird aus einem tiff eingelesen, weiterverarbeitet und wieder als tiff abgespeichert. Allerdings ist es jetzt viel größer als vorher. Das Quell-tiff hatte eine Auflösung von 300x300 dpi und 8Bit Farbtiefe. Nach dem Speichern hat es irgendeine höhere Auflösung (IrfanView zeigt keine Auflösung für das Bild an) und eine Farbtiefe von 24Bit.
Mir ist nicht ganz klar, bei welchem Schritt die Parameter eingestellt werden. Von der Logik her müsste das schon beim resampling (Graphics2D.drawImage) passieren. Da habe ich allerdings nichts gefunden.
Eine weitere Möglichkeit ist beim Schreiben der Datei mit den TIFFImageWriteParam., aber auch da habe ich irgendwie nichts passendes gefunden.
So schaut mein Code aus (Ausschnitte):
resampling:

```
// Draw the scaled image
BufferedImage objDownsample = new BufferedImage(iTargetWidth,iTargetHeight, BufferedImage.TYPE_INT_RGB);
Graphics2D graphics2D = objDownsample.createGraphics();
graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION,RenderingHints.VALUE_INTERPOLATION_BILINEAR);
graphics2D.drawImage(image, 0, 0, iTargetWidth, iTargetHeight, null);
return objDownsample;
```
speichern:

```
// setup writer
ios = ImageIO.createImageOutputStream(tiffFile);
writer.setOutput(ios);
TIFFImageWriteParam writeParam = new TIFFImageWriteParam(Locale.GERMAN);
writeParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT);
writeParam.setCompressionType("PackBits");
// convert to an IIOImage
IIOImage iioImage = new IIOImage(image, null, null);
// write it!
writer.write(null, iioImage, writeParam);
```
Kann mir jemand einen Tipp geben, wo ich die ursprüngliche Auflösung und Farbtiefe einstellen kann?
Danke
Albrecht


----------



## Soulfly (24. Jan 2009)

Sieht so aus, als würde Java nur die 24 Bit Tiefe deiner Maschine nehmen. Mit den Java klassen kannst du es meiner Meinung auch nicht steuern, siehe hier:

www2.hs-fulda.de/caelabor/inhalte/java/j3d/j3d_seminar/19/JAI%20API%20Dokumentation%20von%20Sun/com/sun/media/jai/codec/TIFFEncodeParam.html


----------



## aldi15 (26. Jan 2009)

Hab' ich mir natürlich auch schonmal angeschaut. Stimmt, ich kann hier keine Möglichkeit entdecken. Das heißt aber nicht, dass es keine gibt  :wink: Ich kann mir nicht  vorstellen, dass man etwas implementiert und dann nicht alle notwendigen Möglichkeiten mit einbaut. Evtl. gibt es noch etwas anderes, mit dem man die Parameter einstellen kann?
Grüße
Albrecht


----------

