署名の追加
画像に署名を追加することは、画像を偽造から守るためにデジタル署名する必要があることがあります。別の考え方としては、画像をギャラリーに表示されているように扱うことができます。どちらの理由であっても、Aspose.PSD API は、簡単なメカニズムを使って画像に署名を追加する機能を提供しています。以下で説明するように、この例では Graphics クラスを使用して、元の画像の表面に署名を追加する機能を提供しています。操作を示すために、ディスクから PSD 画像を読み込み、Graphics クラスの DrawImage メソッドを使用して元の画像の表面に署名として別の画像を描画します。作成されたイメージは、PngOptions クラスを使用して PNG 形式で保存します。以下は、画像に署名を追加する方法を示すコード例です。コード例は、分割されているため、操作を追うのが簡単です。ステップバイステップで、例は以下を示します:
- メインおよびセカンダリ (署名) 画像を読み込む。
- Graphics オブジェクトを作成して初期化する。
- Graphics クラスの DrawImage メソッドを使用してイメージを描画する。
- 結果を PNG 形式で保存する。
プログラムサンプル
画像の読み込み
まず、イメージクラスのインスタンスを作成して、ディスクからサンプル画像を読み込みます。
グラフィックオブジェクトの作成と初期化
画像を読み込んだ後、プライマリイメージのオブジェクトを使用しながら、Graphics クラスオブジェクトを作成して初期化します。
セカンダリイメージをプライマリイメージに描画
次に、Graphics クラスの DrawImage メソッドを使用して、セカンダリイメージをプライマリイメージに追加します。DrawImage メソッドには、最初のパラメータとして Image オブジェクトを受け入れるオーバーロードバージョンが複数あり、他のすべてのパラメータはイメージを描画する場所に対応しています。デモのため、次のコードでは、DrawImage のオーバーロードバージョンを使用し、2 番目のパラメータとして Point オブジェクトを受け入れ、署名を元の画像の右下隅に描画しようとしています。
イメージの保存
最後に、PngOptions クラスを使用して、PNG ファイルとしてイメージをローカルディスクに保存します。
コンプリートソース
// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET | |
// Create an instance of Image and load the primary image | |
using (Image canvas = Image.Load(dataDir + "layers.psd")) | |
{ | |
// Create another instance of Image and load the secondary image containing the signature graphics | |
using (Image signature = Image.Load(dataDir + "sample.psd")) | |
{ | |
// Create an instance of Graphics class and initialize it using the object of the primary image | |
Graphics graphics = new Graphics(canvas); | |
// Call the DrawImage method while passing the instance of secondary image and appropriate location. The following snippet tries to draw the secondary image at the right bottom of the primary image | |
graphics.DrawImage(signature, new Point(canvas.Height - signature.Height, canvas.Width - signature.Width)); | |
canvas.Save(dataDir + "AddSignatureToImage_out.png", new PngOptions()); | |
} | |
} |