2010-04-18 13 views

cevap

4

Bu yolla

Image img = ImageIO.read(new ByteArrayInputStream(imageBytes)); 
ImageIcon imgIcon = new ImageIcon(img); 

JLabel label = new JLabel(imgIcon); 

bunu yapacağını ama JPG2000 dekoder standart SDK ile birlikte verilmeyen, sen here (Java Gelişmiş Görüntüleme) baş ve bu biçimdeki için doğru dekoder kullanmalıdır.

+0

Jai'yi indirdim (java sitesinden, linkten değil, indirmesi için jai dosyasını bulamıyorum çünkü), ancak görüntüyü okumak için yolunuzu kullanmaya çalıştığımda. Null istisnası var, nedenini bilmiyorum. Hatta ben bile projeye kavanoz dosyaları ekledim (referans). Yani, bunun için ne çözüm? – Q8Y

3

Görünüşe göre jpeg2000/(.jp2) dosyalarının desteği Java Advanced Imaging (JAI) yazılımından kaldırılmıştır.

JAI 1.1.3'ü kaldırıp, eski sürüm 1.1'i yükleyerek, şimdi .jp2 dosyalarını okumak üzereyim ve artık boş göstericiyi göremiyorum.

Sürüm 1.1 buradan edinilebilir. http://download.java.net/media/jai-imageio/builds/release/1.1/

Sürüm 1.1 listeleri codec'i en için - g3fax g4fac jiio JP2K jpeg ve png

+0

Bağlantı öldü, burada Oracle arşivine yeni bir link var http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-java-client-419417.html – Kalaschni

2

sadece seçeneklerim tüm jj2000 dayanmaktadır biliyoruz.

jai-ImageIO çekirdekli ek bir üçüncü taraf modülü aracılığıyla destek sağlar:

https://github.com/stain/jai-imageio-core

https://github.com/jai-imageio/jai-imageio-jpeg2000

O ImageIO ile kaydetmeniz gerekir ve bundan sonra mümkün olacak jpeg2000 dosyalarını herhangi bir png, bmp veya jpeg gibi okuyun.

jj2000 kendi içinde bir seçenek olmasına rağmen, api günlük kullanım için tasarlanmamıştır.

Diğer seçenekler arasında, jj2000, veya ticari bir ürün olan JDeli için kendi sarmalarını sağlayan JMRTD bulunur.