SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ComponentZine(LEADTOOLS)

複数のTiff画像を1つのファイルに収める.NETアプリケーションの作成

LEADTOOLS 16.5J Document ImagingのRasterImageViewerを使ったアプリケーションの作成

  • このエントリーをはてなブックマークに追加

LEADTOOLS 16.5JとRasterImageViewerコントロールについて

 LEADTOOLS 16.5Jは、画像処理コンポーネントをセットにしたオールインワンのコンポーネントパッケージです(32/64ビットOSに対応)。WindowsフォームおよびASP.NETの.NETコンポーネントとネイティブ関数(C++)、WPFに対応したコンポーネントが含まれており、幅広いファイル形式のサポート(変換/圧縮)、画像表示、画像処理、スキャニング、アノテーションなど、包括的で柔軟性のある強力な画像処理ソリューションを提供します。

 また、Document OCRでは、Document Imagingの全機能に加えて、OCR(光学式文字認識)機能を提供します。さらに、Document OCR with Plug-Insは、Document OCRの機能にフォーム認識、マーク認識(OMR)、バーコード認識、認識結果のPDF出力といった機能を加え、あらゆるタイプのフォーム認識を実現できます。

LEADTOOLS 16.5Jの主な機能

 LEADTOOLSは、画像表示、画像圧縮、ファイル形式のサポート(インポート、エクスポート、変換)、画像処理、画像変換、Fast TWAINスキャン、画面キャプチャ、表示エフェクトとトランジションエフェクト、カラー変換、印刷、データベース/インターネットでの画像のサポートなど多彩なイメージング機能を提供します。

  • ファイル形式のサポート

     JPEG、GIF、TIFF(G3/G4、LZW、CMYK、JTIFを含む)、PNG、BMP、MODCA/IOCA、PCX、TGAなど、現在あるほとんどの画像形式のファイルの読み取り、書き込み、および変換処理を行うことができます。

  • 画像処理

     画像(または画像の選択した部分)を処理する200以上のデジタルフィルタと変換関数が用意されています。スムージング、シャープ化、エッジの抽出/強調、明度/コントラスト/ガンマの変更、色相と彩度の変更、赤目の除去、アンシャープマスク、ノイズの追加、各種リサンプリング手法(バイキュービックなど)を使用したリサイズと回転などの処理をアプリケーションに組み込むことができます。

  • カラー変換

     24ビットのTrueカラー、8ビットのインデックスカラー、1ビットの白黒などの間でカラーモードを変換できます。カラーモードを変更するとピクセルあたりのデータ量が変更され、画像に必要なメモリ/ディスクの量が変わります。

  • 圧縮

     JPEG、CMP、LZW、G3/G4、ハフマン、ランレングスなどの最適かつ最速の圧縮アルゴリズムを使用して画像を圧縮します。LEADTOOLSは、標準的なラスタファイル形式で見られる圧縮方式に加えて、業界標準を上回る高性能の独自圧縮技術も幅広くサポートしています。

  • 高速な画像表示/エフェクト

     品質、位置/倍率、リサンプル手法(通常/バイリニア/バイキュービック)、明度/コントラスト/ガンマ、減色/ディザリング、画像(ソース)とデバイス(デスティネーション)のクリッピング、リサイズ、回転などを制御しながら、画像または選択したリージョンを表示デバイスにレンダリングします。また、小さいパンウィンドウを使用した大きい画像内の移動、サムネイルビューアを使用した画像のグループの閲覧、2000を超える描画トランジションおよびエフェクトの表示画像への適用も可能です。

  • Fast TWAINスキャン

     TWAINをサポートする任意のデバイスからの画像の取り込みを制御します。デバイスの組み込みユーザーインタフェースを使用するほかに、独自のユーザーインタフェースを作成することもできます。

  • 印刷

     位置/倍率やハーフトーン処理/ディザリングを制御しながら、画像または選択したリージョンを印刷します。複数の画像とテキストを単一または複数のページに印刷できます。

  • 画像最適化

     画像を減色して圧縮を最大化することにより、Webサイトやアプリケーション向けに画像を最適化します。

  • データバインディング

     サポートされている任意のファイル形式または圧縮技術を用いた画像を、SQLなどのデータベース、ODBCまたはOLE DBをサポートするデータベース、または.NETデータコントロール接続を通じてバインディング可能なデータベースに保存します。

  • コモンダイアログ

     画像処理コモンダイアログで提供されている一連のコモンダイアログボックスは、Windowsコモンダイアログの機能をLEADTOOSの画像処理機能と統合します。

  • Mixed Raster Content

     LEADTOOLS Mixed Raster Content(MRC)により、Mixed Raster Content形式(T44規格の一部としてカラーおよびグレースケールFAXのために定義された形式)が提供されています。

  • スクリーンキャプチャ

     スクリーンキャプチャ機能を使用して、画面やアプリケーションのリソースから画像をキャプチャし、LEADTOOLSでサポートされている数多くの画像ファイル形式で保存できます。

  • Plug-In

     LEADTOOLS 16.5Jで読み込んだ画像データ上のバーコードの読み込みや、画像データへのバーコードの書き込みを可能にするBarcode Plug-Inや、PDFファイル読み込み、保存、表示機能を追加するPDF Plug-Inも提供されています。

 今回は、この多彩な機能の中からマルチTIFFファイル機能を使って、複数のTIFFフォーマットの画像を1つのファイルにまとめる機能を持ったアプリケーションを作成します。

※注2

 記事のスペースの関係でLEADTOOLS 16.5Jのすべての機能は紹介できないため、詳しい内容を知りたい方は、以下の製品ホームページをご覧ください。

TIFFマルチファイル機能について

 TIFFは、デジタル画像データの互換性の一般化を促進するために設計された、タグベースのファイル形式です。TIFFファイルでは画像データを保存する方法が1つではないため、さまざまな形式のTIFFが存在しますが、LEADTOOLSは一般的なTIFF形式のほとんどをサポートしています。

 その形式の1つに、マルチファイル機能があります。この形式は、ひとつのファイルの中に複数の画像を格納し、マルチページファイルとして保存できる機能で、タグ情報は各ページごとに独立して管理されページごとに画像のサイズ、圧縮方法、カラー形式などを決めることができるようになっています。また、保存する画像の形式も青/緑/赤の順のカラー画像、赤/緑/青の順のカラー画像、12ビットまたは16ビットのグレースケール画像を選べるようになっています。

 なお、マルチページファイルに格納できるページ数の制限については、TIFFの理論的な上限サイズは4GBと言われています。しかし、あまりにも数が多いとファイルの読み込みに時間がかかってしまうため、LEADTOOLS 16.5Jでは、RasterCodecsクラスを使用してTIFFファイルをラスタ画像ファイルとして読み込み/書き込みを行います。

RasterImageViewerコントロールについて

 RasterImageViewerは、ビットマップ、メタファイル、アイコン、JPEG、GIF、PNGその他のLEADTOOLSでサポートされている画像ファイル形式のグラフィックを表示するために使用します。表示するRasterImageオブジェクトをImageプロパティに設定して、画像ファイルを表示します。RasterImageクラスは、ピクセルデータによって定義された画像を操作するために使用し、メモリ内の画像を扱うためのメソッドとプロパティがあります。

 このクラスを使用すると、画像を一から作成したり、ディスク上のファイルから画像をロードしたりできます。また、RasterImageクラスは、1、2、3、4、5、6、7、8、12、16、24、32、48、および64ビットの画像のメモリへの格納をサポートします。8ビットと12ビットのグレースケール画像もサポートされています。

 また、RasterImageオブジェクトのデータは、圧縮なし、RLE圧縮、または超圧縮された状態でメモリに格納できます(超圧縮ビットマップが使用できるのはDocumentシリーズのみです)。

 そして、RasterImageオブジェクトはサイズの異なる複数のページを保持できます。既存のRasterImageに新しいページを追加するには、AddPage、AddPages、InsertPage、InsertPagesの各メソッドを使用します。

 RasterImageオブジェクトから既存のページを削除するには、RemovePageAt、RemovePages、RemoveAllPagesの各メソッドを使用します。PageCountプロパティはRasterImageオブジェクトの総ページ数を保持します。現在のアクティブページを変更するには、Pageプロパティを使用します。RasterImageViewerコントロールは、このRasterImageオブジェクトを使用して、マルチファイルTIFFの各ページを表示させます。

次のページ
フォームの作成

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
ComponentZine(LEADTOOLS)連載記事一覧

もっと読む

この記事の著者

瀬戸 遥(セト ハルカ)

8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/6408 2012/02/27 16:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング