2010-02-01 53 views
56

Làm cách nào để xử lý tệp TIFF trong các trang HTML?Hiển thị hình ảnh TIFF trong tất cả trình duyệt web

Tôi muốn hiển thị tệp TIFF trong trang HTML của mình.

Tôi đã thử sử dụng thẻ nhúng, id đối tượng, img, v.v ... Nhưng tôi không thể hiển thị hình ảnh (TIFF) trong trang HTML.

Tôi không sử dụng Java, .NET hoặc bất kỳ thứ gì khác trong dự án của mình. Tôi chỉ đang sử dụng HTML.

#

Hi all,

Với câu hỏi trên, ngày hôm qua tôi đã nhận giải pháp. tức là safari có thể hỗ trợ tải hình ảnh TIFF.

tôi nên làm gì để tải hình ảnh TIFF trong trình duyệt còn lại không được hỗ trợ (IE, Mozilla, Firefox, vv)

tôi không thể cài đặt trình cài đặt của bên thứ ba hoặc bộ điều khiển (như ActiveXController).

vui lòng cung cấp đề xuất có giá trị cho bạn.

Cảm ơn trước.

Trả lời

47

Điều này xảy ra đối với hỗ trợ hình ảnh của trình duyệt; nó trông giống như các trình duyệt chính duy nhất hỗ trợ tiff là Safari:

http://en.wikipedia.org/wiki/Comparison_of_web_browsers#Image_format_support

đâu là bạn nhận được những hình ảnh tiff từ đâu? Có thể cho chúng được tạo ra ở định dạng khác không?

Nếu bạn có một tập hợp hình ảnh tĩnh thì tôi khuyên bạn nên sử dụng một cái gì đó như PaintShop Pro để chuyển đổi hàng loạt chúng, thay đổi định dạng.

Nếu đây không phải là một tùy chọn thì có thể có một số mileage trong việc tìm kiếm một Java applet viết sẵn (hoặc một plugin trình duyệt khác) có thể hiển thị hình ảnh trong trình duyệt.

+0

+1 TIFF trong các trình duyệt là một điều chắc chắn - thậm chí nhiều hơn vì vậy với CMYK. Tôi đề nghị chuyển sang JPG hoặc PNG. –

+0

Tôi chỉ lưu hình ảnh TIFF trong hệ thống cục bộ. Theo đặc điểm kỹ thuật, tôi không nên chuyển đổi sang định dạng khác. – ASHOK

+0

Theo hỗ trợ định dạng Hình ảnh trong Trình duyệt, tôi có thể sử dụng safari để hiển thị hình ảnh TIFF. Đúng không? – ASHOK

14

tôi thấy khu vực này có chi tiết về các phương pháp khác nhau: How to embed TIFF files in HTML documents

Như đã đề cập, nó sẽ phụ thuộc rất nhiều vào sự hỗ trợ trình duyệt cho định dạng. Xem trang đó trong Chrome trên Windows không hiển thị bất kỳ hình ảnh nào.

Sẽ rất hữu ích nếu bạn đã đăng mã mà bạn đã thử.

+2

+1 Tài nguyên đẹp! –

+2

Xin lỗi nó sẽ rất lớn.Vì vậy, tôi chỉ đăng tải một phần hình ảnh 1) 2) như – ASHOK

+0

mà Cảm ơn bạn rất nhiều. Safari hỗ trợ trình duyệt TIFF image. – ASHOK

3

Hình ảnh phông chữ có thể được hiển thị trực tiếp lên IE và safari chỉ .. không hỗ trợ hình ảnh tiff trên chrome và firefox. bạn có thể mã hóa hình ảnh và sau đó hiển thị nó trên trình duyệt bằng cách giải mã hình ảnh được mã hóa sang một số định dạng khác. Hy vọng công trình này dành cho bạn

+0

Bạn có thể đưa vào bất kỳ nguồn nào không, trong trường hợp thông tin này trở nên lỗi thời? – kenorb

1

Tôi có thể hiển thị hình ảnh tiff trong tất cả trình duyệt.
Trình duyệt tức thì theo mặc định hiển thị hình ảnh tiff nhưng firefox và chrome và trình duyệt khác, bạn nên chuyển đổi hình ảnh tiff từ thẻ img html sang thẻ canvas. các liên kết dưới cùng thực hiện chuyển đổi này. xin vui lòng xem dưới link demo:
https://github.com/rasouliali/TiffViewer

0

Bạn có thể thử chuyển đổi hình ảnh của bạn từ tiff để PNG, đây là cách để làm điều đó:

import com.sun.media.jai.codec.ImageCodec; 
import com.sun.media.jai.codec.ImageDecoder; 
import com.sun.media.jai.codec.ImageEncoder; 
import com.sun.media.jai.codec.PNGEncodeParam; 
import com.sun.media.jai.codec.TIFFDecodeParam; 
import java.awt.image.RenderedImage; 
import java.io.ByteArrayInputStream; 
import java.io.ByteArrayOutputStream; 
import java.io.InputStream; 
import javaxt.io.Image; 

public class ImgConvTiffToPng { 

    public static byte[] convert(byte[] tiff) throws Exception { 

     byte[] out = new byte[0]; 
     InputStream inputStream = new ByteArrayInputStream(tiff); 

     TIFFDecodeParam param = null; 

     ImageDecoder dec = ImageCodec.createImageDecoder("tiff", inputStream, param); 
     RenderedImage op = dec.decodeAsRenderedImage(0); 

     ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); 

     PNGEncodeParam jpgparam = null; 
     ImageEncoder en = ImageCodec.createImageEncoder("png", outputStream, jpgparam); 
     en.encode(op); 
     outputStream = (ByteArrayOutputStream) en.getOutputStream(); 
     out = outputStream.toByteArray(); 
     outputStream.flush(); 
     outputStream.close(); 

     return out; 

    } 
Các vấn đề liên quan