web-dev-qa-db-ja.com

すべてのWebブラウザーでTIFF画像を表示する

HTMLページで TIFF ファイルを処理する方法は?

HTMLページにTIFFファイルを表示したい。

埋め込みタグ、オブジェクトID、imgなどを使用しようとしました。しかし、HTMLページに画像(TIFF)を表示できません。

プロジェクトでJava、.NET、またはその他のものを使用していません。 HTMLのみを使用しています。

こんにちは、みんな、

上記の質問に、昨日解決策を得ました。つまり、TIFF画像の読み込みをサポートできるサファリです。

サポートされていない残りのブラウザ(IE、Mozilla、Firefoxなど)でTIFFイメージをロードするにはどうすればよいですか

サードパーティのインストーラーまたはコントローラー(ActiveXControllerなど)をインストールできません。

これにあなたの貴重な提案をお願いします。

前もって感謝します。

79
ASHOK

これは、ブラウザーイメージのサポートに帰着します。 tiffをサポートする主流のブラウザはSafariのみであるように見えます。

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

どこからTIFF画像を取得していますか?それらを異なる形式で生成することは可能ですか?

画像の静的セットがある場合は、 PaintShop Pro のようなものを使用して、形式を変更してバッチ変換します。

これがオプションではない場合は、ブラウザに画像を表示できる事前に作成されたJavaアプレット(または別のブラウザプラグイン)を探すのに多少の距離があるかもしれません。

60
Richard Everett

さまざまな方法を詳しく説明する次のリソースを見つけました。 HTMLドキュメントにTIFFファイルを埋め込む方法

前述のように、この形式のブラウザーサポートに大きく依存します。 WindowsでChromeでそのページを表示しても、画像が表示されませんでした。

すでに試したコードを投稿した場合にも役立ちます。

16
roryf

Tiff画像はIEおよびsafariのみに直接表示できます。chromeおよびfirefoxでのTiff画像のサポートはありません。画像をエンコードし、エンコードされた画像を他の形式にデコードすることにより、ブラウザに表示できます。これがあなたのために働くことを願っています

4
Pradeep Yadav

画像をtiffから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;

    }
2

すべてのブラウザでTIFF画像を表示できます。
IEブラウザはデフォルトでTIFF画像を表示しますが、firefoxおよびchromeおよびその他のブラウザでは、TIFF画像をimg htmlタグからcanvasタグに変換する必要があります。下部のリンクはこれを変換します。下のリンクのデモをご覧ください:
https://github.com/rasouliali/TiffViewer

2
Ali Rasouli