C# 对PDF文档加密、解密(基于Spire.Cloud.SDK for .NET)
程序员文章站
2022-11-16 10:34:37
spire.cloud.sdk for .net提供了接口pdfsecurityapi可用于加密、解密pdf文档。本文将通过c#代码演示具体加密及解密方法。使用工具: spire.cloud.sdk...
spire.cloud.sdk for .net提供了接口pdfsecurityapi可用于加密、解密pdf文档。本文将通过c#代码演示具体加密及解密方法。
使用工具:
- spire.cloud.sdk for .net
- visual studio
必要步骤:
步骤一:
dll文件获取及导入。在程序中通过nuget搜索下载,直接导入所有dll。
导入效果如下如所示:
步骤二:
app id及key获取。在“我的应用”板块中创建应用以获得app id及app key。
步骤三:
源文档上传。在“文档管理”板块,上传源文档。这里可以建文件夹,将文档存放在文件夹下。不建文件夹时,源文档及结果文档直接保存在根目录。本文示例中,建了两个文件夹,分别用于存放源文档及结果文档。(云平台提供免费1 万次调用次数和 2g 文档内存)
c# 代码示例
【示例1】加密pdf文档
using system; using spire.cloud.pdf.sdk.client; using spire.cloud.pdf.sdk.api; using system.io; using system.collections.generic; namespace encryt { class program { //配置账号信息 static string appid = "app id"; static string appkey = "app key"; static string baseurl = "https://api.e-iceblue.cn"; static configuration pdfconfiguration = new configuration(appid, appkey, baseurl); static pdfsecurityapi pdfsecurityapi = new pdfsecurityapi(pdfconfiguration); static void main(string[] args) { string name = "sample.pdf";//源文档 string destfilepath = "pdfsecurity/encrypt.pdf";//结果文档路径(将结果文档存放在pdfsecurity文件夹下) string userpassword = "123";//设置用户密码 string ownerpassword = "321";//设置所有者密码 string keysize = "key40bit";//设置keysize(如果不需要设置,可设置为null) list<string> permissionsflags = new list<string>();//设置permissionsflags(如果不需要设置,可设置为null) permissionsflags.add("print"); string folder = "input";//源文档所在文件夹 string password = null;//源文档密码 string storage = null; //调用方法加密文档 pdfsecurityapi.encryptdocumentinstorage(name,destfilepath,userpassword,ownerpassword,keysize,permissionsflags,folder,storage,password); } } }
生成的文档打开时,需要输入密码。
文档加密结果:
【示例2】解密pdf文档
这里以上文中生成的加密pdf为测试文档。
using system; using spire.cloud.pdf.sdk.client; using spire.cloud.pdf.sdk.api; namespace decrypt { class program { //配置账号信息 static string appid = "app id"; static string appkey = "app key"; static string baseurl = "https://api.e-iceblue.cn"; static configuration pdfconfiguration = new configuration(appid, appkey, baseurl); static pdfsecurityapi pdfsecurityapi = new pdfsecurityapi(pdfconfiguration); static void main(string[] args) { string name = "encrypt.pdf";//源文档 string destfilepath = "pdfsecurity/decrypt.pdf";//结果文档路径(pdfsecurity为结果文档所在文件夹) string password = "321";//文档密码(这里需要使用的是ownerpassword) string folder = "pdfsecurity";//源文档所在文件夹 string storage = null; //调用方法解密文档 pdfsecurityapi.decryptdocumentinstorage(name,destfilepath,password,folder,storage); } } }
生成的文档将不再有密码保护。
以上就是c# 对pdf文档加密、解密(基于spire.cloud.sdk for .net)的详细内容,更多关于c# 对pdf文档加密、解密的资料请关注其它相关文章!