ドキュメントを著作権侵害から保護するため、または記号やメッセージを表示するために、透かしをドキュメントに追加できます。他の投稿では、さまざまなドキュメント、画像、プレゼンテーションに透かしを入れる方法について説明しました。この記事では、Javaでさまざまな方法でExcelワークブックに透かしを追加する方法を学習します。それぞれのアプローチを使用して、透かしを個別に適用します。
以下のトピックについて説明します。
Excelシートに透かしを入れるJavaAPI
GroupDocs.Watermark for Javaは、ドキュメント、プレゼンテーション、画像、およびその他の多くのファイル形式の透かしを自動化するためのAPIです。サポートされているドキュメント形式の完全なリストは、ドキュメントにあります。
** JAR**ファイルはダウンロードセクションからダウンロードするか、Javaアプリケーション内で最新のリポジトリと依存関係Mavenの構成を使用できます。
<repository>
<id>GroupDocsJavaAPI</id>
<name>GroupDocs Java API</name>
<url>https://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-watermark</artifactId>
<version>21.3</version>
</dependency>
Javaを使用した透かしExcelシート
透かしAPIは、透かしをテキストとしてスプレッドシートに挿入しながらカスタマイズを提供します。以下は、JavaでExcelワークブックに透かしを追加する手順です。
- WatermarkerとSpreadsheetLoadOptionsを使用してソーススプレッドシートをロードします。
- TextWatermarkを使用して、透かしのテキストと外観のプロパティを定義します。
- add() mehtodを使用して、定義された透かしをExcelワークシートに追加します。
- save() メソッドを使用して、結果のスプレッドシートを透かし付きで保存します。
次のJavaコードサンプルは、Excelブックのすべてのシートに、回転と不透明度、および設定された配置でテキスト透かしを追加します。
/*
* JavaのExcelワークブックのすべてのシートに透かしを追加します
*/
// スプレッドシートを読み込む
String filename = "path/spreadsheet.xlsx";
Watermarker watermarker = new Watermarker(filename, new SpreadsheetLoadOptions());
// テキスト透かしの外観を設定する
TextWatermark watermark = new TextWatermark("DRAFT", new Font("Segoe UI", 19));
watermark.setHorizontalAlignment(HorizontalAlignment.Center);
watermark.setVerticalAlignment(VerticalAlignment.Center);
watermark.setRotateAngle(-45);
watermark.setSizingType(SizingType.ScaleToParentDimensions);
watermark.setScaleFactor(0.5);
watermark.setOpacity(0.5);
// 透かしを追加し、透かし付きのスプレッドシートを保存します
watermarker.add(watermark);
watermarker.save("path/watermark-all-spreadsheet.xlsx");
watermarker.close();
Javaを使用した透かし固有のExcelシート
同様に、ワークブックの任意の1枚のシートに透かしを挿入することもできます。次の手順は、JavaでExcelワークブックの特定のシートにテキスト透かしを適用する方法について説明しています。
- ウォーターマーカーを使用してスプレッドシートをロードします。
- TextWatermarkを使用して透かしの外観とテキストを設定します。
- 透かしが上記のシートにのみ適用されるようにワークシートのインデックスを設定します。
- 透かしオプション付きのadd() mehtodを使用して、Excelワークシートにテキスト透かしを追加します。
- save() メソッドを使用して、透かしのある出力スプレッドシートを保存します。
次のJavaコードスニペットは、Excelワークブックの言及されたシートにのみテキスト透かしを適用します。
/*
* Javaを使用して、Excelワークブックの上記のシートにのみ透かしを追加します
*/
// スプレッドシートを読み込む
String filename = "path/spreadsheet.xlsx";
Watermarker watermarker = new Watermarker(filename, new SpreadsheetLoadOptions());
// テキスト透かしとそのワークシートインデックスを設定する
TextWatermark watermark = new TextWatermark("DRAFT", new Font("Segoe UI", 19));
SpreadsheetWatermarkModernWordArtOptions options = new SpreadsheetWatermarkModernWordArtOptions();
options.setWorksheetIndex(0);
// 透かしを追加し、透かし付きのスプレッドシートを保存します
watermarker.add(watermark, options);
watermarker.save("path/watermark-single-sheet.xlsx");
watermarker.close();
Javaを使用した背景としての透かしExcelシート
同様に、スプレッドシートの背景として透かしを追加することもできます。透かしを適用するための上記のアプローチにいくつかの変更があります。以下は、JavaのExcelスプレッドシートに背景テキストの透かしを挿入する手順です。
- ウォーターマーカーを使用してスプレッドシートを読み込みます。
- TextWatermarkを使用して、透かしテキストとその外観を準備します。
- コンテンツを取得して寸法を設定することにより、透かしオプションを使用して透かし設定を背景として設定します。
- add() mehtodを使用して、ワークブックシートに透かしを追加します。
- 最後に、save() メソッドを使用して透かし入りのスプレッドシートを保存します。
次のコードサンプルを使用して、JavaのExcelスプレッドシートに背景テキストの透かしを追加できます。
/*
* JavaのExcelワークブックに透かしを背景として追加する
*/
// スプレッドシートを読み込む
String filename = "path/spreadsheet.xlsx";
Watermarker watermarker = new Watermarker(filename, new SpreadsheetLoadOptions());
// テキスト透かしの外観を設定する
TextWatermark watermark = new TextWatermark("DRAFT", new Font("Segoe UI", 19));
watermark.setHorizontalAlignment(HorizontalAlignment.Center);
watermark.setVerticalAlignment(VerticalAlignment.Center);
watermark.setRotateAngle(-45);
watermark.setSizingType(SizingType.ScaleToParentDimensions);
watermark.setScaleFactor(0.5);
watermark.setOpacity(0.5);
// 背景に透かしを追加する
SpreadsheetContent content = watermarker.getContent(SpreadsheetContent.class);
SpreadsheetBackgroundWatermarkOptions options = new SpreadsheetBackgroundWatermarkOptions();
options.setBackgroundWidth(content.getWorksheets().get_Item(0).getContentAreaWidthPx()); /* set background width */
options.setBackgroundHeight(content.getWorksheets().get_Item(0).getContentAreaHeightPx()); /* set background height */
// 透かし付きのスプレッドシートを保存
watermarker.add(watermark, options);
watermarker.save("path/watermark-background-spreadsheet.xlsx");
watermarker.close();
無料のAPIライセンスを取得する
評価の制限なしにAPIを使用するために、無料の一時ライセンスを取得できます。
結論
この記事では、Javaアプリケーション内でさまざまな方法でExcelシートに透かしを追加する方法について説明しました。 Excelブックのすべてのシートに透かしを挿入する方法を学び、特定のシートにのみ透かしを適用しました。その後、透かしを背景として適用しました。これで、この機能を使用して、スプレッドシートに透かしを入れる独自のアプリケーションを作成できます。
APIの詳細については、ドキュメントをご覧ください。お問い合わせは、フォーラムまでお問い合わせください。