Java TIFF Writer
JDeli Java画像ライブラリには、JavaでTIFFファイルを書き込むためのTIFF Writerが含まれています。TIFFエンコーダーは100% Javaで記述されており、依存関係なしでTIFFサポートを提供します。
- 100% Javaソリューション。dllやネイティブコードへの依存なし
- 圧縮:非圧縮、Deflate、JPEG、LZW
- xmpメタデータへのアクセス
- 単一、マルチファイル
JDeli.write(myBufferedImage, "tiff", outputStreamOrFile);
または
byte[] outputData = JDeli.write(myBufferedImage, "tiff");
JDeli.write(myBufferedImage, OutputFormat.TIFF, outputStreamOrFile)
OutputFormat を使用すると、サポートされている任意の画像フォーマットを設定できます
final TiffEncoderOptions options = new TiffEncoderOptions();
//optionsインスタンスに任意のオプションを設定 - 以下は例です
options.setCompressionFormat(TiffCompressionFormat.DEFLATE);
options.setXmpMetaData("xmp metadata");
//画像解像度の設定
tiffEncoderOptions.setResolutionUnit(TiffResolutionUnit.INCH);
tiffEncoderOptions.setXResolution(144);
tiffEncoderOptions.setYResolution(144);
//書き出し
JDeli.write(myBufferedImage, options, outputStreamOrFile);
TiffEncoderOptions を使用すると、特定のオプションを設定できます。
画像に対して様々な画像処理操作を実行できます。詳細なドキュメントはこちら をご覧ください。
これらの数値は、標準的な画像セット(こちらもドキュメント化されています)を使用して、jmh(私たちのブログで文書化されています )で生成されました。検証したい場合は、簡単に再現できるはずです。コードはGitHub にあります。
数値が高いほど優れています。
モード: スループット カウント: 25 単位: ops/s
| ベンチマーク | スコア | エラー |
|---|---|---|
| Apache | 363.988 | ± 9.254 |
| ImageIO | 184.710 | ± 1.342 |
| JDeli_better_comp | 1045.353 | ± 25.915 |
| JDeli_better_speed | 1254.833 | ± 25.888 |
| JDeli_deflate | 999.939 | ± 25.049 |
| JDeli_jpeg | 1010.410 | ± 18.812 |
| JDeli_LZW | 906.880 | ± 38.993 |
| JDeli_uncompressed | 1961.287 | ± 36.406 |
| 出力ファイル | 平均ファイルサイズ |
|---|---|
| Reference PNG | 6.383KB |
| Apache | 674 bytes |
| ImageIO | 1.898KB |
| JDeli better comp | 1.438KB |
| JDeli better speed | 1017 bytes |
| JDeli deflate | 1017 bytes |
| JDeli jpeg | 1018 bytes |
| JDeli lzw | 985 bytes |
| JDeli uncompressed | 1.896KB |
JDK 18.0.1.1を使用した2021年製14インチM1 MacBook Proでテスト
