Hiển thị hình ảnh TIFF trong tất cả trình duyệt web [đã đóng]


91

Làm thế nào để xử lý tệp TIFF trong các trang HTML?

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ứ nào khác trong dự án của mình. Tôi chỉ đang sử dụng HTML.


CẬP NHẬT: Safari hỗ trợ tải hình ảnh TIFF. Làm cách nào để tải hình ảnh TIFF trong các trình duyệt khác (IE, Mozilla, Firefox, v.v.)?

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

Câu trả lời:


69

Điều này liên quan đến hỗ trợ hình ảnh của trình duyệt; Có vẻ như trình duyệt chính duy nhất hỗ trợ tiff là Safari:

http://en.wikipedia.org/wiki/Comparison_of_web_b browser#Image_format_support

Bạn lấy hình ảnh tiff từ đâu? Có thể tạo chúng ở định dạng khác không?

Nếu bạn có một bộ 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ố khó khăn khi tìm kiếm một ứng dụng Java được 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.


+1 TIFF trong trình duyệt là một điều không chắc chắn - thậm chí còn hơn thế với những trình duyệt CMYK. Tôi đề nghị chuyển đổi sang JPG hoặc PNG.
Pekka

Tôi chỉ giữ 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

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

@ashok: Trang Wikipedia tuyên bố rằng Safari có thể hiển thị hình ảnh TIFF. Tôi khuyên bạn nên tải xuống (giả sử bạn đang sử dụng Windows) và dùng thử. apple.com/safari/download
Richard Ev


16

Tôi đã tìm thấy tài nguyên này trình bày chi tiết các phương pháp khác nhau: Cách nhúng tệp TIFF vào tài liệu HTML

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

Nó cũng sẽ hữu ích nếu bạn đã đăng mã mà bạn đã thử.


2
Xin lỗi nó sẽ rất lớn. Vì vậy, tôi chỉ đăng phần tải hình ảnh 1) <OBJECT CLASSID = "clsid: 02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" WIDTH = "100%" HEIGHT = "100%" CODEBASE = " apple.com/qtactivex/qtplugin. cab "> <PARAM name =" SRC "VALUE =" tiffdocument.tif "> <PARAM name =" SCALE "VALUE =" khía cạnh "> </OBJECT> 2) <img width = 200 height = 200 src =" tiffdocument. tif "alt =" "> như vậy
ASHOK

1
Nó không hoạt động trong Chrome gần đây như đã nói: Trang web này sử dụng một plugin (hình ảnh / tiff) không được hỗ trợ .
kenorb

4

Hình ảnh tiff chỉ có thể hiển thị trực tiếp trên IE và safari .. 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 điều này làm việc cho bạn


2
Bạn có thể bao gồm bất kỳ nguồn nào, trong trường hợp thông tin này trở nên lỗi thời?
kenorb

3

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

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;

    }

Tôi có thể tải xuống từ com.sun.media.jai.codecđâu? Tôi cố gắng để tìm kiếm nó trên web và không có JAR
roeygol

2
@roeygol Nó đến từ SDK hình ảnh nâng cao Java đã ngừng hoạt động tại oracle.com/technetwork/java/javasebusiness/downloads/…
brantgurga
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.