ブラウザは、画像形式のサポートが不十分です。実際には、GIF、JPG、PNG、および WebP のみがサポートされています。
私は新しいものを持っていたい: JBIG2
エンド ユーザーの観点からは、Chrome 拡張機能をダウンロードしてインストールするだけで、ブラウザは新しい画像形式をデコードできます。
Web 開発者の観点から見ると、新しい形式は透過的であり、タグ img、canvas、および css と互換性があります。JBIG2 画像を表示するために、彼はまだ以下を使用しています。
<img src=“path/to/myImage.jbig2”>
また
var myImage = new Image();
myImage.addEventListener( 'load', function() {
// insert in canvas, when image is loaded
});
myImage.src = 'path/to/myImage.jbig2';
また
.my-class {
background-image: url( “path/to/myImage.jbig2”);
}
問題はデコーダ自体ではありません。C言語で書かれたこの1つのJBig2decを使用する予定です。
問題は、新しい画像デコーダをどのように実装するかです。Chrome で C コードを実行する必要がある場合、最善の解決策はNative Client Extensionを使用することです。
さらに良いことに、この NaCl Web ページで読むことができます。
グラフィックス、オーディオなど: 2D および 3D グラフィックスのレンダリング、オーディオの再生、マウスおよびキーボード イベントへの応答、複数のスレッドでの実行、およびメモリへの直接アクセスを行うネイティブ コード モジュールを実行します。ユーザーがプラグインをインストールする必要はありません。
マルチメディア アプリケーション: サウンド、画像、およびムービーを処理するためのコーデックは、Native Client モジュールでブラウザーに追加できます。
残念ながら、2D グラフィックデコーダーを実装するためのドキュメントもサンプルもありません。minetype image/jbig2のフックを登録する必要があると思います。
NaCl を使用して新しい画像形式のデコーダーを実装する方法を知っている人はいますか?