さまざまなドキュメント、画像、およびプレゼンテーションに透かしを入れる方法についてはすでに説明しました。今日は、.NETアプリケーションでC#を使用して、さまざまな方法でExcelブックに透かしを追加する方法について説明します。
以下のトピックについて説明します。
.NETAPIからExcelシートに透かしを入れる
GroupDocs.Watermarkは、さまざまなファイル形式のドキュメントと画像用の.NETAPIを提供します。 GroupDocs.Watermark for .NETを使用して、C#を使用したさまざまな方法でスプレッドシートに透かしを適用します。
DLLまたはMSIインストーラーは、ダウンロードセクションからダウンロードするか、NuGetから入手できます。
Install-Package GroupDocs.Watermark
C#を使用した透かしExcelシート
APIを使用すると、さまざまなカスタマイズで透かしとしてスプレッドシートにテキストを挿入できます。以下は、.NETアプリケーションでC#を使用してExcelワークブックに透かしを追加する手順です。
- スプレッドシートの読み込みオプションを準備します。
- ウォーターマーカーを使用してスプレッドシートを読み込みます。
- TextWatermarkを使用して透かしのテキストと外観を定義します。
- Add mehtodを使用して、Excelワークシートにテキスト透かしを追加します。
- Saveメソッドを使用して、結果のスプレッドシートを透かし付きで保存します。
次のC#コードサンプルは、テキスト透かしをExcelブックのすべてのシートに回転と不透明度で適用します。
/*
* C#を使用してExcelワークブックのすべてのシートに透かしを追加します
*/
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
using (Watermarker watermarker = new Watermarker(@"path/spreadsheet.xlsx", loadOptions))
{
// ワークシートにテキスト透かしを追加します
TextWatermark textWatermark = new TextWatermark("DRAFT", new Font("Arial", 100))
{
RotateAngle = -45,
Height = 200,
Width = 500,
Opacity = .2,
ForegroundColor = Color.DarkBlue
};
// 透かしを追加し、透かしの入ったスプレッドシートを保存します。
watermarker.Add(textWatermark);
watermarker.Save(@"path/allpages-watermark-spreadsheet.xlsx");
}
C#を使用した透かし固有のExcelシート
同様に、透かしは、ブックのすべてのシートに適用するのではなく、特定のシートにのみ適用できます。次の手順では、C#を使用してExcelブックの特定のシートにテキスト透かしを挿入する方法について説明します。
- ロードオプションを準備します。
- Watermarkerクラスを使用してスプレッドシートを読み込みます。
- TextWatermarkクラスを使用して透かしの外観とテキストを定義します。
- 透かしが上記のシートにのみ適用されるようにワークシートのインデックスを設定します。
- 透かしオプション付きの追加方法を使用して、Excelワークシートにテキスト透かしを追加します。
- Saveメソッドを使用して、透かしのある出力スプレッドシートを保存します。
次のコードスニペットは、Excelワークブックの言及されたシートにのみテキスト透かしを適用します。
/*
* C#を使用して、Excelワークブックの上記のシートにのみ透かしを追加します
*/
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
using (Watermarker watermarker = new Watermarker(@"path/spreadsheet.xlsx", loadOptions))
{
// ワークシートにテキスト透かしを追加します
TextWatermark textWatermark = new TextWatermark("DRAFT", new Font("Arial", 100))
{
RotateAngle = -45,
Height = 200,
Width = 500,
Opacity = .2,
ForegroundColor = Color.DarkBlue
};
// ワークシートのインデックスを定義する
SpreadsheetWatermarkShapeOptions textWatermarkOptions = new SpreadsheetWatermarkShapeOptions()
{
WorksheetIndex = 1
};
// 透かしを追加し、透かしの入ったスプレッドシートを保存します。
watermarker.Add(textWatermark, textWatermarkOptions);
watermarker.Save(@"path/onepage-watermark-spreadsheet.xlsx");
}
C#を使用して背景として透かしExcelシート
同様に、スプレッドシートの背景として透かしを追加することもできます。透かしを適用する上記の手法から少し変更があります。以下は、C#を使用してExcelスプレッドシートに背景テキストの透かしを挿入できるようにする手順です。
- スプレッドシートをロードするためのロードオプションを準備します。
- ウォーターマーカーを使用してスプレッドシートを読み込みます。
- TextWatermarkを使用して、透かしのテキストと外観(回転、位置、寸法、不透明度、色など) を定義します。
- コンテンツを取得し、サイズを設定して、背景の透かしオプションを設定します。
- 透かしを適用するワークシートのインデックスを設定します。 (オプション)
- Addmehtodを使用してスプレッドシートに透かしを追加します。
- 保存メソッドを使用して透かし付きのスプレッドシートを保存します。
次のコードサンプルは、.NETアプリケーション内でC#を使用してExcelスプレッドシートに背景透かしを追加する方法を示しています。
/*
* C#を使用してExcelワークブックに透かしを背景として追加する
*/
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
using (Watermarker watermarker = new Watermarker(@"path/spreadsheet.xlsx", loadOptions))
{
// 透かしの外観を定義する
TextWatermark textWatermark = new TextWatermark("DRAFT", new Font("Arial", 100))
{
RotateAngle = -45,
X = 200,
Y = 200,
Height = 200,
Width = 500,
Opacity = .2,
ForegroundColor = Color.DarkBlue
};
// スプレッドシートのコンテンツの寸法を取得する
SpreadsheetContent content = watermarker.GetContent<SpreadsheetContent>();
SpreadsheetBackgroundWatermarkOptions options = new SpreadsheetBackgroundWatermarkOptions();
options.BackgroundWidth = content.Worksheets[0].ContentAreaWidthPx; /* set background width */
options.BackgroundHeight = content.Worksheets[0].ContentAreaHeightPx; /* set background height */
options.WorksheetIndex = 0;
// 透かしを追加し、透かしの入ったスプレッドシートを保存します。
watermarker.Add(textWatermark, options);
watermarker.Save(@"path/background-watermark-spreadsheet.xlsx");
}
無料のAPIライセンスを取得する
評価の制限なしにAPIを使用するために、無料の一時ライセンスを取得できます。
結論
要約すると、C#を使用してExcelシートに透かしを追加するさまざまな方法について説明しました。まず、Excelブックのすべてのシートにテキスト透かしを追加しました。次に、特定のシートにのみ透かしを適用しました。最後に、テキストベースの透かしを背景としてExcelブックに挿入しました。
APIの詳細については、製品ドキュメントにアクセスしてください。お問い合わせは、フォーラムまでお問い合わせください。