2010-02-01 2 views
56

Как обращаться с файлом TIFF на HTML-страницах?Показать изображение TIFF во всем веб-браузере

Я хочу отобразить файл TIFF на моей странице HTML.

Я пробовал использовать встроенный тег, идентификатор объекта, img и т. Д. Но я не могу отобразить изображение (TIFF) на странице HTML.

Я не использую Java, .NET или любую другую вещь в моем проекте. Я использую только HTML.

#

Привет всем,

К вышеуказанному вопросу, вчера я получил решение. i.e safari может поддерживать загрузку изображений TIFF.

Что я должен сделать, чтобы загрузить TIFF изображения в оставшемся неподдерживаемый браузер (IE, Mozilla, Firefox и т.д.)

Я не могу установить программу установки стороннего или контроллер (например, ActiveXController).

, пожалуйста, дайте свое ценное предложение этому.

Спасибо заранее.

ответ

47

Это относится к поддержке изображений в браузере; это выглядит как единственный основной браузер, который поддерживает размолвку является Safari:

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

Где вы получать TIFF файлы изображений? Возможно ли, чтобы они были сгенерированы в другом формате?

Если у вас есть статический набор изображений, я бы рекомендовал использовать что-то вроде PaintShop Pro, чтобы пакетно конвертировать их, изменяя формат.

Если это не вариант, может возникнуть пробег в поиске заранее написанного Java-апплета (или другого плагина браузера), который может отображать изображения в браузере.

+0

+1 TIFF в браузерах является уверены, что - еще поэтому с CMYK. Я предлагаю присоединиться к JPG или PNG. –

+0

Я сохранял только изображения TIFF в локальной системе. Согласно спецификации, я не должен конвертировать в другой формат. – ASHOK

+0

В соответствии с поддержкой формата изображения в браузере я могу использовать сафари для отображения изображения TIFF. Это правильно? – ASHOK

14

Я нашел этот ресурс, подробно различные методы: How to embed TIFF files in HTML documents

Как уже упоминалось, он будет очень сильно зависеть от поддержки браузера для формата. Просмотр этой страницы в Chrome в Windows не отображает изображения.

Было бы также полезно, если бы вы отправили код, который вы уже пробовали.

+2

+1 Хороший ресурс –

+2

К сожалению, было бы очень большой, поэтому я разместить изображение загрузки часть только 1) 2) как то – ASHOK

+0

Спасибо так много. браузер Safari поддерживает изображение TIFF. – ASHOK

3

Tiff изображения могут отображаться непосредственно на IE и сафари только .. нет поддержки изображений tiff на chrome и firefox. вы можете закодировать изображение, а затем отобразить его в браузере, расшифровав кодированное изображение в другом формате. Надеюсь, это сработает для вас

+0

Можете ли вы включить любой источник, если эта информация устареет? – kenorb

1

Я могу показать изображение tiff во всем браузере.
В браузере ie по умолчанию отображаются изображения tiff, но firefox и chrome и другой браузер вы должны преобразовать изображение tiff из тега img html в тег canvas. нижние ссылки делают это преобразование. пожалуйста, вид снизу ссылки демки:
https://github.com/rasouliali/TiffViewer

0

Вы можете попробовать преобразовать изображение из кальцита в PNG, вот как это сделать:

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; 

    } 
Смежные вопросы