Ich muss eine TIFF-Datei in ein BufferedImage konvertieren. Ich schrieb den folgenden Code:Konvertieren eines TIFF in ein gepuffertes Bild (Java)
String filepath = "C:\\tiffFolder\\";
String filename = "myTiffImage.tif";
File myFile = new File (filepath + filename);
BufferedImage img = ImageIO.read(myFile);
Ich weiß sicher, myFile richtig instanziiert wird: das Problem ist, dass nach der vierten Zeile des Codes img noch null ist.
Was mache ich falsch? Vielen Dank!
bearbeiten
gelöst, habe ich den folgenden Code:
FileSeekableStream stream = new FileSeekableStream(filepath + filename);
TIFFDecodeParam decodeParam = new TIFFDecodeParam();
decodeParam.setDecodePaletteAsShorts(true);
ParameterBlock params = new ParameterBlock();
params.add(stream);
RenderedOp image1 = JAI.create("tiff", params);
BufferedImage img = image1.getAsBufferedImage();
Was gibt myFile.canRead() zurück? [zwischen Zeile 3 und 4] – Burkhard
@Burkhard, es gibt true zurück –
@DanieleMilani Überprüfen Sie, was die folgende Zeile ausgibt: 'System.out.println (Arrays.toString (ImageIO.getReaderFileSuffixes()));' Auf meinem Computer es ist '[bmp, jpg, jpeg, wbmp, png, gif]'. Kein 'Tif'. – johnchen902