DioDocs for Excel
DioDocs for Excel
セキュリティオプションへの対応
ファイル操作 > PDF ファイルへのエクスポート > セキュリティオプションへの対応

デジタル文書を保存する際、ユーザーパスワード、所有者パスワード、印刷許可、内容のコピーや抽出の許可、注釈許可などを設定する必要がある場合があります。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 暗号化が使用され、追加の許可フラグを定義できます。