デジタル文書を保存する際、ユーザーパスワード、所有者パスワード、印刷許可、内容のコピーや抽出の許可、注釈許可などを設定する必要がある場合があります。PDF は、デジタル文書を共有するために推奨されるファイル形式です。DioDocs for Excel ライブラリを使用することで、スプレッドシートを PDF ファイルとして保存する際に、PDF のセキュリティオプションを指定できます。指定されたオプションによって権限のないユーザーに対して PDF のアクセスを制限することができ、PDF ドキュメントの保護に役立ちます。
DioDocs for Excel のPdfSecurityOptions クラスを使用して、スプレッドシートを PDF に変換する際に PDF ファイルへのアクセスを制限できます。以下のテーブルに、PdfSecurityOptions クラスのプロパティについて説明します。
プロパティ |
説明 |
UserPassword | PDF ファイルのユーザーパスワードを取得または設定します。 |
OwnerPassword | PDF ファイルの所有者パスワードを取得または設定します。PDF のアクセス許可を変更するときに必要となります。 |
PrintPermission | PDF を印刷する許可を取得または設定します。デフォルト値は true です。 |
FullQualityPrintPermission | 高品質で印刷する許可を取得または設定します。デフォルト値は true です。このプロパティは、PrintPermission プロパティが true に設定されている場合のみに動作します。 |
ExtractContentPermission | 内容をコピーまたは抽出する許可を取得または設定します。デフォルト値は true です。 |
ModifyDocumentPermission | PDF ファイルを変更する許可を取得または設定します。デフォルト値は true です。 |
AssembleDocumentPermission | ページの挿入/回転/削除、ブックマークまたはサムネイル画像の作成の許可を取得または設定します。デフォルト値は true です。ユーザーがページを挿入、回転、または削除できないようにするには、ModifyDocumentPermission プロパティを false に設定する必要があります。 |
ModifyAnnotationsPermission | 注釈を変更して、フォームフィールドに入力する許可を取得または設定します。デフォルト値は true です。 |
FillFormsPermission | ModifyAnnotationsPermission プロパティがfalseを返した場合でも、フォームフィールドに入力する許可を取得または設定します。デフォルト値は true です。ユーザーによってインタラクティブなフォームフィールドに入力できないようにするには、ModifyAnnotationsPermission プロパティを false に設定する必要があります。 |
スプレッドシートを PDF ファイルとして保存する際にPDF のセキュリティオプションを追加する方法については、次のサンプルコードを参照してください。
C# |
コードのコピー
|
---|---|
public void SavePDFPdfSecurityOptions() { // ワークブックを初期化します Workbook workbook = new Workbook(); // 既定のワークシートを取得します IWorksheet worksheet = workbook.Worksheets[0]; // データ object[,] data = new object[,]{ {"Name", "City", "Birthday", "Sex", "Weight", "Height", "Age"}, {"Bob", "NewYork", new DateTime(1968, 6, 8), "male", 80, 180, 56}, {"Betty", "NewYork", new DateTime(1972, 7, 3), "female", 72, 168, 45}, {"Gary", "NewYork", new DateTime(1964, 3, 2), "male", 71, 179, 50}, {"Hunk", "Washington", new DateTime(1972, 8, 8), "male", 80, 171, 59}, {"Cherry", "Washington", new DateTime(1986, 2, 2), "female", 58, 161, 34}, {"Coco", "Virginia", new DateTime(1982, 12, 12), "female", 58, 181, 45}, {"Lance", "Chicago", new DateTime(1962, 3, 12), "female", 49, 160, 57}, { "Eva", "Washington", new DateTime(1993, 2, 5), "female", 71, 180, 81}}; // データを設定します worksheet.Range["A1:G9"].Value = data; // ExcelをPDFとして保存するときのPDFのセキュリティオプション PdfSecurityOptions securityOptions = new PdfSecurityOptions(); // ユーザーパスワードを設定します securityOptions.UserPassword = "ユーザー"; // 所有者パスワードを設定します securityOptions.OwnerPassword = "所有者"; // PDFファイルの印刷は許可されていません securityOptions.PrintPermission = false; // PDFファイルのフォームフィールドへの入力は許可されていません securityOptions.FillFormsPermission = false; PdfSaveOptions pdfSaveOptions = new PdfSaveOptions(); // PDFのセキュリティオプションを設定します pdfSaveOptions.SecurityOptions = securityOptions; // ワークシートをPDFに保存します workbook.Save(@"4-SavePDFPdfSecurityOptions.pdf", pdfSaveOptions); } |
メモ:DioDocs for Excelでは、40 - 128 ビットの RC4 暗号化が使用され、追加の許可フラグを定義できます。