v25.11
新插件 PDF 转换器
- 类 PdfConverter: 包含所有插件功能: DocConverter, XlsConverter, HtmlConverter, JpegConverter, PdfAConverter, PngConverter, TiffConverter。
- 类 DocConverter: 将很快被删除,请使用 PdfConverter。
- 类 XlsConverter: 将很快被删除,请使用 PdfConverter。
- 类 HtmlConverter: 将很快被删除,请使用 PdfConverter。
- 类 JpegConverter: 将很快被删除,请使用 PdfConverter。
- 类 PdfAConverter: 将很快被删除,请使用 PdfConverter。
- 类 PngConverter: 将很快被删除,请使用 PdfConverter。
- 类 TiffConverter: 将很快被删除,请使用 PdfConverter。
- 类 PdfAConvertOptions: 重命名为 类 PdfToPdfAOptions。
- 请查看 新的插件架构。
示例用法:
该示例演示如何将 PDF 文档转换为 Doc 格式。
// 创建 PdfToDocOptions 对象以设置说明
var options = new PdfToDocOptions();
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 设置输出文件路径
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// 执行过程
PdfConverter.Convert(options);示例用法:
该示例演示如何将 PDF 转换为 XLSX 文档。
// 创建 PdfToXlsOptions 对象以设置说明
var options = new PdfToXlsOptions();
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 设置输出文件路径
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// 执行过程
PdfConverter.Convert(options);示例用法:
该示例演示如何将 PDF 转换为 HTML 文档。
// 创建 PdfToHtmlOptions 对象以设置输出数据类型为带有嵌入资源的文件
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_input.pdf"));
// 设置输出文件路径
options.AddOutput(new FileDataSource("path_to_output.html"));
// 执行过程
PdfConverter.Convert(options);示例用法:
该示例演示如何将 HTML 转换为 PDF 文档。
// 创建 HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_input.html"));
// 设置输出文件路径
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// 执行过程
PdfConverter.Convert(options);示例用法:
该示例演示如何将 PDF 文档转换为 JPEG 格式。
// 创建 PdfToJpegOptions 对象以设置说明
var options = new PdfToJpegOptions();
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_input.pdf"));
// 设置输出目录路径
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// 执行过程
PdfConverter.Convert(options);示例用法:
该示例演示如何将 PDF 文档转换为 PNG 格式。
// 创建 PdfToPngOptions 对象以设置说明
var options = new PdfToPngOptions();
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_input.pdf"));
// 设置输出目录路径
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// 执行过程
PdfConverter.Convert(options);示例用法:
该示例演示如何将 PDF 文档转换为 TIFF 格式。
// 创建 PdfToTiffOptions 对象以设置说明
var options = new PdfToTiffOptions();
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 设置输出目录路径
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// 执行过程
PdfConverter.Convert(options);示例用法:
该示例演示如何将 PDF 文档转换为 PDF/A 格式 (在这种情况下为 PDF/A-3b):
// 创建选项类以设置转换过程
var options = new PdfToPdfAOptions
{
PdfAVersion = PdfAStandardVersion.PDF_A_3B
};
// 添加源文件
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // 替换为您的实际文件路径
// 添加转换后文件的保存路径
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));
// 运行转换
PdfConverter.Convert(options);示例用法:
该示例演示如何验证 PDF 文档是否符合 PDF/A 格式 (在这种情况下为 PDF/A-1a):
// 创建选项类以设置验证过程
var options = new PdfAValidateOptions
{
PdfAVersion = PdfAStandardVersion.PDF_A_1A
};
// 添加一个或多个要验证的文件
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // 替换为您的实际文件路径
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
// 根据需要添加更多文件
// 运行验证并获取结果
var resultContainer = PdfConverter.Validate(options);
// 检查 resultContainer.ResultCollection 属性以获取每个文件的验证结果:
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
var result = resultContainer.ResultCollection[i];
var validationResult = (PdfAValidationResult) result.Data;
var isValid = validationResult.IsValid; // 第 i 个文档的验证结果
}新插件 PDF 安全
- 类 PdfSecurity: 包含所有插件功能: Security, Signature, Timestamp。
- 类 Security: 将很快被删除,请使用 PdfSecurity。
- 类 Signature: 将很快被删除,请使用 PdfSecurity。
- 类 Timestamp: 将很快被删除,请使用 PdfSecurity。
- 类 DecryptionOptions: 重命名为 类 DecryptOptions。
- 类 EncryptionOptions: 重命名为 类 EncryptOptions。
- 类 SignOptions: 现在具有 类 Timestamp 的属性。
- 请查看 新的插件架构。
示例用法:
该示例演示如何加密 PDF 文档。
// 创建 EncryptOptions 对象以设置说明
var options = new EncryptOptions("123456", "qwerty");
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 设置输出文件路径
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 执行过程
PdfSecurity.Encrypt(options);示例用法:
该示例演示如何解密 PDF 文档。
// 创建 DecryptOptions 对象以设置说明
var options = new DecryptOptions("123456");
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 设置输出文件路径
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 执行过程
PdfSecurity.Decrypt(options);示例用法:
该示例演示如何签名 PDF 文档。
// 创建 SignOptions 对象以设置说明
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 设置输出文件路径
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 执行过程
PdfSecurity.Sign(options);示例用法:
该示例演示如何带时间戳签名 PDF 文档。
// 创建 SignOptions 对象以设置说明
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file");
options.TimestampOptions = new TimestampOptions("server_url");
// 添加输入文件路径
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// 设置输出文件路径
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// 执行过程
PdfSecurity.Sign(options);集成到 PdfManager 的插件 PdfChatGpt
- 类 PdfChatGpt: 将很快被删除,请使用 PdfManager。
- 类 PdfChatGptRequestOptions: 重命名为 **类 ChatGptRequestOptions **。
可用于与 ChatGpt 一起工作的新选项
- 类 ChatCompletion: 允许检查请求的结果。
- 类 Choice: 允许检查请求的结果。
- 类 Usage: 允许检查请求的结果。
- 类 ChatGptConsts: 允许使用额外的设置,如 ModelName、API URL 等。
示例用法:
该示例演示如何通过添加消息到请求中使用 ChatGpt。
var options = new ChatGptRequestOptions();
// 设置输出文件路径
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
options.ApiKey = "Your API key."; // 需要提供密钥以访问 API。
options.MaxTokens = 1000; // 聊天完成时生成的最大令牌数。
// 添加请求消息。
options.Messages.Add(new Message
{
Content = "你是一个有帮助的助手。",
Role = Role.System
});
options.Messages.Add(new Message
{
Content = "有史以来最大的披萨直径是多少?",
Role = Role.User
});
// 处理请求。
var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);
var fileResultPath = result.ResultCollection[0].Data;
var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // ChatGPT API 聊天完成对象。改进
- PDF 转图片 - 改进转换性能
- PDF 转 TIFF - 改进转换速度
- PDF 转 Doc - 改进性能
修复的错误
- 修复 HTML 转 PDF - 结果文件中的格式问题
- 修复 PDF 转 TIFF 的性能问题
- 修复 HTML 转 PDF - CSS 文件作为外部资源未应用于生成的 PDF 文件