自動化のためのPSDファイルをテンプレートとして使用する - ビジネスカードケース

概要

この記事では、PSD/PSBファイルがいくつかの既知のテンプレート構造を持つ場合に、PSDファイル内のいくつかのレイヤーをプログラムで更新する必要がある場合によく使用されるケースについて説明しています。これは、異なる人々のために多くの名刺を作成するために使用できます(ビジネスカードケース)。または、PSDファイルを異なる言語に翻訳し、その中のいくつかのグラフィック素材を置き換える必要がある場合にも使用できます。

この記事を読んだ後、以下のことができるようになります:

todo:image_alt_text

シンプルなケース

たとえば、既知のレイヤー名を持ついくつかのPSDテンプレートがあるとします。したがって、C#を使用してPSDレイヤーを変更、更新、または置換する必要があります。まず、Aspose.PSDでテンプレートファイルを開く必要があります。

C#を介してPSDファイルを開く方法は?

todo:image_alt_text

その後、名前でレイヤーを見つける必要があります。これのためのシンプルな実装がここにあります。

PSDファイル内のレイヤーを名前で見つける方法

レイヤーが見つかったら、Graphicsを使用して通常の方法で更新できます。

PSDレイヤーのGraphicsに描画する方法

この場合、新たに読み込んだPNG画像を既存のPSDレイヤーに描画して、古いデータは新しいファイルで失われます。

しかし、テキストも更新する必要がある場合はどうでしょうか?プロセスは似ています。テキストレイヤーを名前で見つけ、それからプログラムでPhotoshopファイルのテキストレイヤーを更新します。

C#を使用してPhotoshopでテキストレイヤーを更新する方法

最後に、変更内容を保存する必要があります:

変更されたPSDファイルを保存する方法 - Aspose.PSD

結果の画像:

todo:image_alt_text

追加機能を備えた複雑なケース

先ほどは、PSDファイルのレイヤー内の画像を置換する最も簡単な方法を示しました。

しかし、Aspose.PSDには新しいレイヤーを追加したり、古いレイヤーを削除したり、異なるスタイルを使用してテキストレイヤーを更新するなど、さらに複雑な追加機能があります。

置換したいレイヤーを見つけ、それからLayersリスト内でそのインデックスを見つけ、その後削除してから、それをJPEGファイル(https://wiki.fileformat.com/image/jpeg/)から新しいレイヤーを作成し、同じ場所に挿入できます。

ファイルから新しいレイヤーを作成し、Aspose.PSDを使用してPSDイメージに挿入する方法

このファイルのコードスニペットの最後では、レイヤーの位置を修正し、新しいレイヤーの配列をPsdイメージに保存します。

PsdImageレイヤーのプロパティをコピーする方法

そして最後に、既存のPSDイメージ内のテキストレイヤーをC#で更新する必要があります。Aspose.PSDは[TextLayer by Portionsの更新]をサポートしています。(テキストポーション)は、スタイルと段落のプロパティのユニークな組み合わせを持っています。

PsdImage レイヤーのプロパティをコピーする方法

その結果、Jpeg、Png、J2k、Bmp、Gif、またはTiffファイルから新しいレイヤーを持つPSDテンプレートをコードで変更し、各行で異なるスタイルの複数行テキストを持つtextを更新しました。

todo:image_alt_text