Mostrar imagen TIFF en todos los navegadores web [cerrado]


92

¿Cómo manejar un archivo TIFF en páginas HTML?

Quiero mostrar un archivo TIFF en mi página HTML.

Intenté usar etiqueta incrustada, ID de objeto, img, etc. Pero no puedo mostrar la imagen (TIFF) en la página HTML.

No estoy usando Java, .NET o cualquier otra cosa en mi proyecto. Solo estoy usando HTML.


ACTUALIZACIÓN: Safari admite la carga de imágenes TIFF. ¿Cómo puedo cargar imágenes TIFF en otros navegadores (IE, Mozilla, Firefox, etc.)?

No puedo instalar un complemento o controlador de terceros (como ActiveXController).

Respuestas:


70

Esto se reduce al soporte de imágenes del navegador; Parece que el único navegador convencional que admite tiff es Safari:

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

¿De dónde sacas las imágenes tiff? ¿Es posible que se generen en un formato diferente?

Si tiene un conjunto estático de imágenes, le recomiendo usar algo como PaintShop Pro para convertirlas por lotes, cambiando el formato.

Si esta no es una opción, entonces puede ser necesario buscar un subprograma Java preescrito (u otro complemento del navegador) que pueda mostrar las imágenes en el navegador.


+1 TIFF en los navegadores es algo incierto, más aún con los CMYK. Sugiero que se convierta en JPG o PNG.
Pekka

Mantuve las imágenes TIFF solo en el sistema local. Según la especificación, no debería convertir a otro formato.
ASHOK

Según el soporte de formato de imagen en el navegador, puedo usar safari para mostrar la imagen TIFF. ¿Es correcto?
ASHOK

@ashok: la página de Wikipedia afirma que Safari puede representar imágenes TIFF. Recomiendo descargarlo (asumiendo que está usando Windows) y probarlo. apple.com/safari/download
Richard Ev


16

Encontré este recurso que detalla los diversos métodos: Cómo incrustar archivos TIFF en documentos HTML

Como se mencionó, dependerá en gran medida de la compatibilidad del navegador con el formato. Ver esa página en Chrome en Windows no mostró ninguna de las imágenes.

También sería útil que publicara el código que ya probó.


2
Lo siento, sería muy grande. Así que estoy publicando la parte de carga de imágenes solamente 1) <OBJECT CLASSID = "clsid: 02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" WIDTH = "100%" HEIGHT = "100%" CODEBASE = " apple.com/qtactivex/qtplugin. cab "> <PARAM nombre =" SRC "VALOR =" tiffdocument.tif "> <PARAM nombre =" ESCALA "VALOR =" aspecto "> </OBJECT> 2) <img ancho = 200 alto = 200 src =" tiffdocument. tif "alt =" "> así
ASHOK

1
No funciona en el Chrome reciente como dice: este sitio usa un complemento (imagen / tiff) que no es compatible .
Kenorb

4

Las imágenes Tiff se pueden mostrar directamente en IE y solo en Safari. No se admiten imágenes TIFF en Chrome y Firefox. puede codificar la imagen y luego mostrarla en el navegador decodificando la imagen codificada en algún otro formato. Espero que esto funcione para usted


2
¿Puede incluir alguna fuente, en caso de que esta información quede desactualizada?
Kenorb

3

Puede intentar convertir su imagen de tiff a PNG, así es como se hace:

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;

    }

de donde puedo descargar com.sun.media.jai.codec? Traté de buscarlo en la web y no había JAR
roeygol

2
@roeygol Proviene del SDK de imágenes avanzadas de Java descontinuado en oracle.com/technetwork/java/javasebusiness/downloads/…
brantgurga
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.