作成日: 2026/03/25 最終更新日: 2026/03/25
文書種別
使用方法
詳細
エクスポートするPDFを暗号化し、パスワードや許可属性(印刷や編集など)を設定できます。
使用するプロパティは、以下の通りです。
-
Encryptプロパティ
ドキュメントを暗号化するかどうかを決定します。下記のパスワードやユーザー許可を有効にする場合には、本プロパティをTrueに設定する必要があります。
-
OwnerPasswordプロパティ
オーナーパスワードを設定します。ドキュメントを開く際に、このプロパティに設定したパスワードが入力された場合、Permissionsプロパティで指定したユーザー許可の設定内容にかかわらず、ドキュメントへのフルアクセスが許可されます。
Permissionsプロパティを設定する場合は、OwnerPasswordプロパティも必ず設定してください。
オーナーパスワードが設定されていないPDFは常にフルアクセスが許可された状態で開かれます。
したがって、Permissionsプロパティを設定する意味がなくなります。 -
UserPasswordプロパティ
ユーザーパスワードを設定します。ドキュメントを開くために、ユーザは本パスワードを入力する必要があります。このプロパティを設定しない場合、ドキュメントを開くときにパスワードを入力するダイアログは表示されません。
※OwnerPasswordプロパティのみを設定したPDFは、パスワードの入力なしに開けます。
-
Permissionsプロパティ
ドキュメントのためのユーザ許可を設定します。設定可能な値は以下をご参照ください。
上記の値はOR演算を使用して複数の設定を組み合わせることが可能です。(デフォルトはすべての属性を許可した状態です)
たとえば、「印刷」と「フォームフィールドの入力または署名」のみ許可したPDFとしてエクスポートする場合、以下のようなコードになります。
ページレポート/RDLレポートの場合
◆サンプルコード (C#)
// 描画するレポートファイルをロードします。
var rpt = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo("PageReport1.rdlx"));
// セキュリティ設定を行います。
var settings = new GrapeCity.ActiveReports.Export.Pdf.Page.Settings();
settings.Encrypt = true;
settings.OwnerPassword = "Owner";
settings.UserPassword = "User";
settings.Permissions =
GrapeCity.ActiveReports.Export.Pdf.Page.PdfPermissions.AllowPrint |
GrapeCity.ActiveReports.Export.Pdf.Page.PdfPermissions.AllowFillIn;
// PDFにエクスポートします。
var renderingExtension= new GrapeCity.ActiveReports.Export.Pdf.Page.PdfRenderingExtension();
var outputDirectory = new System.IO.DirectoryInfo(Application.StartupPath);
var provider = new GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider(outputDirectory, "Sample.pdf");
rpt.Document.Render(renderingExtension, provider, settings);◆サンプルコード (VB.NET)
' 描画するレポートファイルをロードします。
Dim rpt As New GrapeCity.ActiveReports.PageReport(New System.IO.FileInfo("PageReport1.rdlx"))
' セキュリティ設定を行います。
Dim settings As New GrapeCity.ActiveReports.Export.Pdf.Page.Settings()
settings.Encrypt = True
settings.OwnerPassword = "Owner"
settings.UserPassword = "User"
settings.Permissions =
GrapeCity.ActiveReports.Export.Pdf.Page.PdfPermissions.AllowPrint Or
GrapeCity.ActiveReports.Export.Pdf.Page.PdfPermissions.AllowFillIn
' PDFにエクスポートします。
Dim renderingExtension As New GrapeCity.ActiveReports.Export.Pdf.Page.PdfRenderingExtension()
Dim outputDirectory As New System.IO.DirectoryInfo(Application.StartupPath)
Dim provider As New GrapeCity.ActiveReports.Rendering.IO.FileStreamProvider(outputDirectory, "Sample.pdf")
rpt.Document.Render(renderingExtension, provider, settings)
セクションレポートの場合
◆サンプルコード (C#)
// セクションレポートを生成します。
var rpt = new SectionReport1();
rpt.Run(false);
// セキュリティ設定を行います。
var pdfExport = new GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport();
pdfExport.Security.Encrypt = true;
pdfExport.Security.OwnerPassword = "Owner";
pdfExport.Security.UserPassword = "User";
pdfExport.Security.Permissions =
GrapeCity.ActiveReports.Export.Pdf.Section.PdfPermissions.AllowPrint |
GrapeCity.ActiveReports.Export.Pdf.Section.PdfPermissions.AllowFillIn;
// PDFにエクスポートします。
pdfExport.Export(rpt.Document, "Sample.pdf");◆サンプルコード (VB.NET)
' セクションレポートを生成します。
Dim rpt As New SectionReport1
rpt.Run(False)
' セキュリティ設定を行います。
Dim pdfExport As New GrapeCity.ActiveReports.Export.Pdf.Section.PdfExport
pdfExport.Security.Encrypt = True
pdfExport.Security.OwnerPassword = "Owner"
pdfExport.Security.UserPassword = "User"
pdfExport.Security.Permissions = _
GrapeCity.ActiveReports.Export.Pdf.Section.PdfPermissions.AllowPrint Or _
GrapeCity.ActiveReports.Export.Pdf.Section.PdfPermissions.AllowFillIn
' PDFにエクスポートします。
pdfExport.Export(rpt.Document, "Sample.pdf")