JavaでマルチTIFFファイルを表示する方法

TIFF(タグ・イメージ・ファイル・フォーマット)ファイルは、複数の画像を含むことができます。これがマルチTIFFファイルと呼ばれるものです。この記事では、JavaでマルチTIFFファイルを読み込んで表示する方法を紹介します。
開発者ブログ

著者 Amy Pearson (IDRsolutions)  翻訳 インターワーク

JavaでマルチTIFFファイルの表示方法

まず、画像をJavaに読み込む必要があります。標準のJDKはマルチTIFF画像をサポートしていないので、JDeliのような追加ライブラリを使用する必要があります。BufferedImageには1つの画像しか格納できないので、JDeliは画像数と各画像を読み込むメソッドを返します。

				
					final <a href="https://support.idrsolutions.com/jdeli/tutorials/reading/java-tiff-reader" target="_blank" urlslab_href_old="https://support.idrsolutions.com/jdeli/tutorials/reading/read-tiff-image-in-java" title="A tutorial covering how to use JDeli TIFF Reader to read images in Java" hreflang="en-US">TiffDecoder</a> tiff = new TiffDecoder();
final int imageCount = tiff.getImageCount(file);
BufferedImage image = tiff.readImageAt(currentIm, file);
				
			

画像をBufferedImagesとして取得すれば、Javaで表示するのは簡単です。

以前の記事「Javaで画像を表示する方法」をお読みになった方は、すでにJavaで画像ビューアを持っていると思います。それをマルチTIFF画像を表示するように変更することができます。

Java ViewerでMulti-Tiffファイルをサポートするために必要な追加コード

まず、ファイル内の各画像を読み込んで表示する必要があります。これは、ファイル内の画像をカウントしておくことで実現できます:

				
					final TiffDecoder tiff = new TiffDecoder();
final int imageCount = tiff.getImageCount(file);
				
			

そして、JDeliビューアと同じように、ボタンで1つずつ表示し、順番に表示することができます。

				
					final int currentIm = 0;
final JButton <a href="https://www.intwk.co.jp/knowledge-base/category/web-service-cloud/page/2/" title="[2ページ目] Webサービスとクラウド について 株式会社インターワーク AI solution company" hreflang="ja" onover-preload="1">next</a> = new JButton("<a href="https://www.intwk.co.jp/jdeli-portal/category/image-processing/page/3/" title="[3ページ目] 画像を加工する について 株式会社インターワーク AI solution company" hreflang="ja" onover-preload="1">Next</a> image");
final JButton prev = new JButton("<a href="https://www.intwk.co.jp/knowledge-base/category/web-service-cloud/web-service-configuration-option/" title="Webサービス設定オプション について 株式会社インターワーク AI solution company" hreflang="ja" onover-preload="1">Previous</a> image");
next.addActionListener(a -&gt; {
if (currentIm  {
if (currIm &gt; 0) {
curentIm--;
drawImage();
}})
// Add the buttons to the <a href="https://javadoc.idrsolutions.com/org/jpedal/examples/viewer/Viewer.html" target="_blank" title="declaration: package: org.jpedal.examples.viewer, class: Viewer">viewer</a>
final JPanel multiButtons = new JPanel();
multiButtons.add(prev);
multiButtons.add(next);
add(multiButtons, BorderLayout.PAGE_END);
				
			

draw imageメソッドは、次のように毎回画像を設定するために使うものです:

				
					void drawImage() {
BufferedImage image = tiff.readImageAt(currentIm, file);
imageLabel.setIcon(new ImageIcon(image));
}


				
			

これで、マルチTIFFファイル内のすべての画像を表示できるようになり、JavaでマルチTIFFファイルを表示できるようになりました。

Javaで画像ファイルを扱う開発ツール(SDK)をお探しのみなさま、効率のよい開発作業のためにJDeliがきっとお役に立つことと思います。JDeliは無料で試用していただけますので、まずはお試しのうえ、ぜひ導入をご検討ください。

JDeliでのシステム開発やプログラミング、無料トライアルの情報はこちらをご覧ください。技術的なことから費用面まで、ご質問・ご相談もこちらからお寄せください。

JDELI – 幅広い画像フォーマットを読み書きするJava SDK

Javaでイメージファイルを安全に扱うJDeliは、HEICやその他のイメージファイル形式をJavaで簡単に読み書き、変換、操作、処理できるようにするJava SDKです。HEIC画像の読み出し/書き込みJDeliは、開発者にHEIC画像フォーマットの包括的なサポートを提供します。また、JPEG/JPEG2000、PNG、TIFFファイルを含む他の画像フォーマットのサポートも強化されています重要なファイルを安全に保管JDeliは、お客様のサーバー上で動作し

JPEG2000からTIFFに変換

JDeliは、Javaやその他の言語/スクリプトでJPEG2000をTIFF画像ファイルに簡単に変換します。JavaでJPEG2000をTIFFに変換する方法1.JPEG2000画像をJavaに読み込むBufferedImage bufferedImage = JDeli.read(new File("jpxImageFile.jpx")); 2.必要に応じて画像を加工します(拡大縮小、シャープネス、ライトニング、透

JPGからTIFFに変換

JDeliは、Javaやその他の言語/スクリプトでJPEGをTIFF画像ファイルに簡単に変換します。JavaでJPEGをTIFFに変換する方法1.JPEG画像をJavaに読み込むBufferedImage bufferedImage = JDeli.read(new File("jpgImageFile.jpg")); 2.必要に応じて画像を加工します(拡大縮小、シャープネス、ライトニング、透かしなど)

TIFFからPDFに変換

JDeliはTIFFをPDFに変換することができます。JDeliは変換メソッドでワンステップで変換できます。また、TIFF画像を読み込んでからPDFとして書き出すこともできますので、画像に何らかの加工を施したい場合にも便利です。コマンドラインまたは他の言語から任意の画像をPDFに変換しますjava -jar jdeli.jar --convert pdf "inputFileOrDir" "outputDir"Java

Facebook
Twitter
Email
公式ブログロゴ

製品に関する記事や開発者のブログ

開発チームに最適なJava画像ライブラリとは?

画像処理は現代のJavaアプリケーションにおいて避けて通れない機能の一つです。Webサービスでのサムネイル生成、ドキュメント管理システムでのファイル変換、データ分析での可視化出力など、様々な場面で画像ライブラリの品質がシステム全体の安定性を左右します。

多くの開発チームが最初に手を伸ばすのは、Java標準のImageIOやオープンソースのライブラリでしょう。確かに導入は簡単で、基本的な画像処理には十分に見えます。しかし、プロダクション環境で実際に運用を始めると、思わぬ落とし穴に遭遇することがあります。

開発チームに最適なJava PDFライブラリとは?

「オープンソースで十分じゃない?」
そう考えるエンジニアは少なくありません。確かに無償のライブラリは機能が豊富で、改変も自由です。しかしバグ修正やセキュリティパッチを自分たちで追い続ける労力、サードパーティのパッケージを呼び出すリスク、そしてライセンス条件の判断に迷う時間などを考えると、コードを書かない”隠れコスト”が静かに膨らんでいきます。

「保守や脆弱性対応に追われて本来の開発が進まない!」

そんな声が聞こえてきたら、商用ライブラリへの切り替えどきかもしれません。

開発チームに最適なPDF-HTML変換ツールとは?

開発チームに最適なPDF-HTML変換ツールとは?PDFからHTMLへの変換において開発者が直面する課題と、それを解決するBuildVuの特長を解説。正確な変換品質、スケーラビリティ、セキュリティ、開発者フレンドリーな出力、そしてシンプルな料金体系で、チーム開発の効率を高める方法をご紹介します。

PDFファイルを扱うシステム開発・ウェブ開発に役立つ

開発者向けPDF入門ガイド

開発者向けPDF入門ガイド

PDFの基礎から応用まで開発者のための入門ガイド2024年版

PDF の仕様や活用方法など、開発者に必要な情報がコンパクトにまとめました。初めてPDFを扱う開発者にも分かりやすく、基礎から応用までカバーしているため、PDF のポテンシャルを最大限に引き出し、アプリケーション開発やドキュメント管理の効率化を図るための手引きとなるでしょう。技術的な側面に興味がある開発者だけでなく、ビジネスでPDFを有効活用したい方にもおすすめの一冊です。

MENU
PAGE TOP