2009-02-27 38 views
6

Java có thể hiển thị png, jpg một số định dạng hình ảnh khác, nhưng tôi phải hiển thị tệp bmp trong JLable bằng cách nhận đường dẫn tệp.Hiển thị BMP trong JLabel

ImageIcon imageIcon = new ImageIcon(imageFile.getAbsolutePath()); 

ImageIcon hỗ trợ hình ảnh png,gif,jpg điển hình.

Trong dự án tôi đang làm việc, tôi không thể mở tệp bmp và lưu trữ cùng một tệp dưới dạng jpg, vì tôi không cho phép lưu trữ thứ gì đó trong thời gian chạy. Tôi chỉ có thể tạo ra hình ảnh để giữ nó trong bộ nhớ. Nhưng tôi không biết làm thế nào để làm điều này.

Tôi làm cách nào để hiển thị BMP trong Java1.4?

Cảm ơn

Trả lời

2

Tôi tìm thấy một số lớp được viết bằng Java 1.5 nhưng bạn có thể dễ dàng cập nhật 2 lớp để bạn có thể sử dụng các lớp trong 1,4.

imag4j có thể chuyển đổi tệp bmp và ico thành các đối tượng BufferedImage mà bạn có thể hiển thị bằng java. Bạn có thể nhập 17 lớp và phải cập nhật 10 dòng vì câu lệnh java 1.5.

Bạn nhận được bộ chuyển đổi bmp hoạt động rất tốt.

8

javax.imageio.ImageIO hỗ trợ định dạng BMP:

Image image = ImageIO.read(imageFile); 
ImageIcon icon = new ImageIcon(image); 

JLabel label = new JLabel(icon); 

ImageIO cũng có thể được sử dụng để chuyển đổi giữa các định dạng khác nhau.

+0

Nghe có vẻ hay. Tôi sẽ kiểm tra nó. –

+0

ImageIO.read (imageFile) trả về null khi hình ảnh là một tệp bmp –

+2

Không có hỗ trợ BMP tích hợp cho đến khi Java 5. – paxdiablo