フォームの作成
では、さっそくプログラムを作成しましょう。作成するプログラムは、「ファイルを保存ダイアログ」で新しいマルチファイルを作成し、メニューから挿入するTIFFファイルを選んで保存します。ファイルを保存した後、その画像ファイルをRasterImageViewerコントロールで表示します。
また、Buttonコントロールを使用して、保存したファイルを1ページずつ表示したり、ページの先頭と最後に移動する機能も組み込みます。
GUIのデザイン
フォームには、これらの機能を実装するために、RasterImageViewer、MenuStrip、SaveFileDialog、OpenFileDialog、ToolTip、Button、の各コントロールを配置します。メニューは、以下の階層のメニューを作成します。
-
ファイル
- 新規作成
- 終了
-
TIFF編集
- TIFFファイルの追加
マルチページTIFFファイルの新規作成処理
ユーザーインターフェイスができたら、コードを実装していきます。最初は、「新規作成」メニューのClickイベントハンドラで行う新しいマルチページTIFFファイの作成です。処理の流れとしては、「ファイルの保存」ダイアログボックスを表示し、作成するマルチページTIFFファイルのファイル名を決めてもらいます。
次にフォームのLoadイベントハンドラで、RasterCodecsクラスのStartupメソッドを実行し、画像の入出力ライブラリの起動に必要なデータを初期化します。このStartupメソッドはアプリケーションの開始時に1回だけ実行します。
そして、「ファイルを保存ダイアログ」を表示します。SaveFileDialogコントロールは、フィルタにTiffを指定し、デフォルトで「multi_tiff1.tif」というファイル名を設定しておきます。入力されたファイル名は、グローバル変数として宣言した「MultiTiff_Fname」に格納しておきます。なお、3つの名前空間を宣言しておいてください。
Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.WinForms Public Class Form1 Private MultiTiff_Fname As String = "" Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load ' 入出力ライブラリの起動に必要なデータを初期化します。 RasterCodecs.Startup() End Sub Private Sub 新規作成ToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles 新規作成ToolStripMenuItem.Click SaveFileDialog1.Filter = "Tiffファイル(*.tif)| *.tif" SaveFileDialog1.FileName = "multi_tiff1.tif" If SaveFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then If MessageBox.Show("次のファイル名でマルチTIFFファイルを作成します。" + Environment.NewLine + SaveFileDialog1.FileName, "ファイル作成の確認", _ MessageBoxButtons.OKCancel, _ MessageBoxIcon.Question) = Windows.Forms.DialogResult.OK Then MultiTiff_Fname = SaveFileDialog1.FileName Else MessageBox.Show("ファイルの作成を中止しました") End If End If End Sub
using Leadtools; using Leadtools.Codecs; using Leadtools.WinForms; namespace Multi_Tiff_cs { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private String MultiTiff_Fname = ""; private void Form1_Load(object sender, EventArgs e) { // 入出力ライブラリの起動に必要なデータを初期化します。 RasterCodecs.Startup(); } private void 新規作成ToolStripMenuItem_Click(object sender, EventArgs e) { this.saveFileDialog1.Filter = "Tiffファイル(*.tif)| *.tif"; this.saveFileDialog1.FileName = "multi_tiff1.tif"; if(this.saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK) { if(MessageBox.Show("次のファイル名でマルチTIFFファイルを作成します。" + Environment.NewLine + saveFileDialog1.FileName, "ファイル作成の確認", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.OK) { MultiTiff_Fname = saveFileDialog1.FileName; }else { MessageBox.Show("ファイルの作成を中止しました"); } } }