PDF ドキュメントは、いくつかの方法でセキュリティを付加することができます。PDF が許可パスワードで保護されている場合、読者はパスワードを入力せずにドキュメントを開くことができますが、印刷やコンテンツのコピーなど、ドキュメントをさらに操作する権限を持っていないかもしれません。この記事では、Java で Spire.PDF for Java ライブラリを使用して PDF ドキュメントのセキュリティ権限を設定する方法について学びます。
Spire.PDF for Java をインストールします
まず、Spire. PDF for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url> https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf</artifactId>
<version>10.1.9</version>
</dependency>
</dependencies>
PDF ドキュメントにセキュリティ権限を追加
以下は、Spire.PDF for Java を使用して PDF ドキュメントにセキュリティ権限を適用する手順です。
- PdfDocument のオブジェクトを作成します。
- PdfDocument.loadFileFile() メソッドを使って PDF ファイルを読み込みます。
- 開くパスワードと権限パスワードを指定します。生成されたドキュメントを開く際にパスワードを必要としないように、開くパスワードを空に設定することができます。
- ドキュメントを開くパスワードと権限パスワードで暗号化し、PdfDocument.getSecurity().encrypt() メソッドを使用してセキュリティ権限を設定します。このメソッドは PdfPermissionsFlags 列挙型をパラメータとして受け取り、暗号化されたドキュメントのユーザーアクセス許可を定義します。
- PdfPermissionsFlags 列挙型をパラメーターとして受け取ります。
- PdfDocument.saveToFile() メソッドを使用してドキュメントを保存します。
- Java
import com.spire.pdf.PdfDocument;
import com.spire.pdf.security.PdfEncryptionKeySize;
import com.spire.pdf.security.PdfPermissionsFlags;
import java.util.EnumSet;
public class ChangeSecurityPermissions {
public static void main(String[] args) {
//PdfDocumentオブジェクトを作成します
PdfDocument doc = new PdfDocument();
//サンプルのPDFファイルをロードします
doc.loadFromFile("サンプル.pdf");
//オープンパスワードを指定します
String openPsd = "";
//許可パスワードを指定します
String permissionPsd = "password";
//権限を指定します
EnumSet permissionsFlags = EnumSet.of(PdfPermissionsFlags.Print, PdfPermissionsFlags.Full_Quality_Print);
//ドキュメントをオープンパスワードと許可パスワードで暗号化し、権限と暗号化キーサイズを設定します
doc.getSecurity().encrypt(openPsd, permissionPsd, permissionsFlags, PdfEncryptionKeySize.Key_128_Bit);
//ドキュメントを別のPDFファイルに保存します
doc.saveToFile("output/セキュリティ権限.pdf");
}
}
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。