使用 VintaSoft PDF .NET 插件将 PDF 文档转换为 PDF/A 文档

博客分类:PDF.NET

2025/07/18

PDF/A 是专为电子文档长期存储而设计的 ISO 标准。其目标是确保文件视觉和逻辑内容在未来数十年内保持不变,不受环境和软件的影响。对于企业的电子档案而言,过渡到 PDF/A 具有重要的法律意义和数据保存管理价值。



PDF 和 PDF/A 的区别

PDF 和 PDF/A 是两种文件格式,各有其用途和特点。了解它们之间的区别对于选择适合您用途和需求的格式至关重要。

用途:

结构和内容:

播放稳定性:

法律意义和存档存储:

转换和兼容性:

PDF 和 PDF/A 之间的选择取决于用途:如果您需要创建日常使用的文档,PDF 就足够了;如果您需要长期存档文档,则应使用 PDF/A。


VintaSoft PDF .NET 插件功能

VintaSoft PDF .NET Plug-in 是一个用于在 Windows、Linux 和 macOS 上处理 PDF 和 PDF/A 文档的 .NET SDK。该解决方案的主要优势:


PDF 到 PDF/A 转换过程步骤



VintaSoft 如何简化开发人员和 IT 部门的工作

VintaSoft 提供强大的工具和解决方案,可显著简化开发流程并将其集成到企业系统中。这些软件产品在创建时充分考虑了开发人员的需求,从而实现高效的任务管理和更高的生产力:

VintaSoft PDF .NET Plug-in 是企业实现 PDF/A 格式自动化转换以符合合规要求(例如,向国家档案馆提交文件、长期存储合同、会计、医疗和工程文件)的理想解决方案。透明的集成、卓越的性能和可靠性是大型企业和软件开发商都非常看重的优势。


结论

VintaSoft PDF .NET Plug-in 提供完整的 PDF/A 转换和验证周期 - 从加载源文件到自动实施长期存储,同时考虑到所有国际标准和业务流程要求。


以下 C# 代码演示了如何将 PDF 文档转换为 PDF/A-1b 文档:
/// <summary>
/// Converts a PDF document to conformance with PDF/A-1b specification.
/// </summary>
/// <param name="pdfFilename">The filename of source PDF document.</param>
/// <param name="outputPdfFilename">The filename of output PDF document.</param>
public static void ConvertDocumentToPdfA1b(string pdfFilename, string outputPdfFilename)
{
    // determine that file must converted to the PDF/A-1b and saved back to the source file
    bool sameFile = pdfFilename.ToUpperInvariant() == outputPdfFilename.ToUpperInvariant();
    
    // create the PDF/A-1b converter
    Vintasoft.Imaging.Pdf.Processing.PdfA.PdfA1bConverter converter = 
        new Vintasoft.Imaging.Pdf.Processing.PdfA.PdfA1bConverter();
    converter.LzwFixupCompression = Vintasoft.Imaging.Pdf.PdfCompression.Zip;
    // converter.OutputIntentDestIccProfile = ...
    
    // execute the conversion
    System.Console.WriteLine("Conversion...");
    Vintasoft.Imaging.Processing.ConversionProfileResult result = 
        converter.Convert(pdfFilename, outputPdfFilename, new Vintasoft.Imaging.Processing.ProcessingState());

    // if PDF document is converted successfully
    if (result.IsSuccessful)
    {
        System.Console.WriteLine("Document converted to PDF/A-1b.");
    }
    // if PDF document is NOT converted
    else
    {
        if (!sameFile)
            System.IO.File.Delete(outputPdfFilename);

        throw result.CreateConversionException();
    }
}