Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

スマホの画像をOneDriveにアップして共有・編集するWPFアプリを作る

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2017/07/11 14:00
目次

LEADTOOLSのサンプルの実行

 LEADTOOLSを体験する最初の一歩としてサンプルを実行してみましょう。サンプルはデフォルトインストールで以下のパスに保存されています。

 「C:\LEADTOOLS 19\Examples」WPF版の画像加工のサンプルを実行してみます。「C:\LEADTOOLS19\Examples\DotNet3\CS\ImageProcessingDem\ImageProcessingDemo_4.csproj」をVisual Studioで開きます。開いたサンプルはそのままデバッグ実行することができます。F5キーでデバッグします。

サンプルの実行
サンプルの実行

 中央下部の一覧から適応したいエフェクトを選択し、右側の「Run」を押すと画像が加工されます。その際に、以下のようにライセンスについてというポップアップが表示されます。

ライセンスについて
ライセンスについて

 これはトライアル版のライセンスの場合に表示されるメッセージです。トライアル版のライセンスは利用から60日間利用可能です。ここで注意しておきたいのは、今実行しているサンプルなどもトライアル版のライセンスを使用しているので、製品版導入後にサンプルを実行すると試用期間切れでサンプルを実行できないことがあるということです。この場合はライセンスファイルを製品版のものと置き換えることでサンプルを動かすことができます。それではトライアル版のライセンスがどこに保存されているのかを確認しましょう。

 トライアル版のライセンスはインストール時に「C:\LEADTOOLS 19\Common\License」以下に配置されます。この後作成するアプリケーションでもライセンスを指定する必要があるので覚えておきましょう。

ドキュメントの確認

 サンプルの利用の次は、ドキュメントを読み、簡単なアプリケーション作成するとよいでしょう。LEADTOOLSには日本語のドキュメントが用意されており、以下のURLから確認できます。

LEADTOOLS Help
LEADTOOLS Help

入門者向けチュートリアル:画像のロードと保存を行うWindowsフォームアプリ

 まずは簡単なチュートリアルとして、上記ドキュメントの「チュートリアル」→「初心者向け」→「画像のロードと表示」を実行しています。ドキュメントの以下のURLを読めば早いのですが、本記事の基本的な知識として手順をなぞってみます。

プロジェクトの作成

 まずはWindowsフォームアプリケーションを作成します。プロジェクト名は「ImageLoadSample」とします。

プロジェクトの作成
プロジェクトの作成

参照の追加

 以下のdllを参照に追加します。

  • Leadtools.dll
  • Leadtools.Codecs.dll
  • Leadtools.Controls.WinForms.dll
  • Leadtools.Codecs.Cmp.dll

 参照への追加方法は、Visual Studio右側のソリューションエクスプローラーの参照と書かれた行の上でマウスの右クリックから「参照の追加」を選択します。

参照の追加
参照の追加

 「C:\LEADTOOLS 19\Bin\Dotnet4\Win32」以下にある上記dllを追加します。

追加する参照リスト
追加する参照リスト

コントロールの追加

 Form1.csのデザイナー画面を開きます。ツールボックスにImageViewerがあれば、それをデザイナー上にドロップします。ImageViewerが無い場合は上部メニューの「ツール」→「ツールボックスアイテムの選択」をクリックします。表示されたポップアップウィンドウの右下の参照から「C:\LEADTOOLS 19\Bin\Dotnet4\Win32\Leadtools.Controls.WinForms.dll」を追加します。

 追加後「OK」ボタンでウィンドウを閉じます。ツールボックスにImageVIewerが追加されているのでデザイナー上に配置し、Name属性に「rasterImageViewer1」と設定します。

 続いてツールボックスからButtonを配置します。配置したButtonコントロールをダブルクリックしてクリックイベントを追加します。

コードの修正

 チュートリアルに従いForm1.csを以下のように書き換えます。

Form1.csの修正
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Controls;

namespace ImageLoadSample
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        // the RasterCodecs object for loading/saving images
        private RasterCodecs codecs;
        private void Form1_Load(object sender, System.EventArgs e)
        {
            // Initialize a new RasterCodecs object
            codecs = new RasterCodecs();
        }

        private void button1_Click(object sender, System.EventArgs e)
        {
            // show the open file dialog
            OpenFileDialog dlg = new OpenFileDialog();
            dlg.Filter = "All Files|*.*";
            if (dlg.ShowDialog(this) == DialogResult.OK)
            {
                try
                {
                    // try to load the file
                    RasterImage tempImage = codecs.Load(dlg.FileName);

                    // set the image into the viewer
                    rasterImageViewer1.Image = tempImage;
                }
                catch (Exception ex)
                {
                    MessageBox.Show(this, ex.Message);
                }
            }
        }
    }
}

ライセンスの読み込み

 このままでは、ライセンスを読み込んでいないため、エラーになります。先ほどのImageProcessingDemoからUnlockSupport.csを移植して以下のようにライセンスの読み込みを行います。

Form1.csの修正
public Form1()
{
    InitializeComponent();

    this.Load += Form1_Load;

    // ライセンスの読み込み
    Support.SetLicense();
}

 デバッグ実行して、読み込んだ画像(JPEG)が表示されることを確認します。


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

著者プロフィール

  • 西村 誠(ニシムラ マコト)

     Microsoft MVP Windows Platform Development。  Flash、PHPの開発経験もあり国産ECサイト構築フレームワーク「EC-CUBE」の公式エバンジェリストでもある。  ブログ:眠るシーラカンスと水底のプログラマー  著書:基礎から学ぶ Windows...

バックナンバー

連載:現役エンジニア直伝! 「現場」で使えるコンポーネント活用術(LEADTOOLS)
All contents copyright © 2005-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5