使用 C# 对 PDF 文档进行分类

您可以使用 IAB-2、文档和情感分类法中的预定义标签或类别以编程方式对文档进行分类。文件的分类使在正确的时间更容易找到相关信息。它还有助于管理和排序文档以搜索和检索重要信息。在本文中,您将学习如何使用 C# 对 PDF 文档进行分类

本文讨论/涵盖了以下主题:

用于 PDF 分类的 C# API

我将使用 GroupDocs.Classification for .NET API 对 PDF 文件进行分类。它提供了预定义类别中的高级文档和文本分类。 API 支持不同类型的分类法,例如 IAB-2、文档和情感分类法。它分析文本并显示分类信息,包括带有概率分数的最佳类别。您可以对各种行业标准文档格式进行分类,例如 PDF、Word、OpenDocument、RTF 和 TXT。该 API 还提供带有自动检测语言的情感分析,并支持英语、中文、西班牙语和德语。它可用于在任何面向 .NET 平台的开发环境中开发应用程序。

您可以 下载 API 的 DLL 或使用 NuGet 安装它。

Install-Package GroupDocs.Classification

使用 C# 使用 IAB-2 分类法对 PDF 文档进行分类

您可以按照下面给出的简单步骤,以编程方式轻松地使用 IAB-2 分类法对 PDF 文档进行分类:

以下代码示例展示了如何使用 C# 使用 IAB-2 分类法对 PDF 进行分类

// 创建分类器
var classifier = new Classifier();

// 使用 IAB-2 对文档进行分类
var response = classifier.Classify("sample.pdf", @"C:\Files\", 3, Taxonomy.Iab2);

// 显示分类信息
foreach (var r in response.BestResults)
{
    Console.WriteLine("ClassName: " + r.Name);
    Console.WriteLine("ClassProbability: " + r.Probability);
    Console.WriteLine("--------------------------------");
}
使用 C# 使用 IAB-2 分类法对 PDF 文档进行分类

使用 C# 使用 IAB-2 分类法对 PDF 文档进行分类

Classifier 类是提供各种方法 对文档进行分类的主要类。此类的 Classify() 方法按文件名和目录名对文档进行分类。 bestClassesCount 参数定义要返回的最佳匹配类的计数。在上面的代码示例中,我使用 Taxonomy.IAB2 分类法进行分类。

ClassificationResponse 类提供属性和方法来显示检索到的分类信息。

使用 C# 使用文档分类法进行 PDF 分类

您可以按照以下简单步骤以编程方式使用文档分类法对 PDF 文档进行分类:

以下代码示例展示了如何使用 C# 对带有文档分类的 PDF 进行分类

// 创建分类器
var classifier = new Classifier();

// 使用文档分类对文档进行分类
var response = classifier.Classify("sample.pdf", @"C:\Files\", 4, Taxonomy.Documents, PrecisionRecallBalance.Precision);
                
// 显示分类信息
foreach (var r in response.BestResults)
{
    Console.WriteLine("ClassName: " + r.Name);
    Console.WriteLine("ClassProbability: " + r.Probability);
    Console.WriteLine("--------------------------------");
}
使用 C# 使用文档分类法对 PDF 进行分类

使用 C# 使用文档分类法对 PDF 进行分类

使用 C# 从 Stream 中的 PDF 文档分类

您可以按照以下给出的几个步骤,以编程方式从文件流中对 PDF 文档进行分类:

以下代码示例展示了如何使用 C# 对来自文档流的 PDF 进行分类

using (var fs = File.OpenRead(Path.Combine(@"C:\Files\", "sample.pdf")))
{
    // create classifier
    var classifier = new Classifier();
    
    // classify document
    var response = classifier.Classify(fs, "sample.pdf", 2, Taxonomy.Documents);
    
    // show classification information
    Console.WriteLine($"{"sample.pdf"}: {response.BestClassName}, {response.BestClassProbability}");
}

使用 C# 对受密码保护的 PDF 文件进行分类

您可以按照下面给出的简单步骤,以编程方式轻松地对受密码保护的 PDF 文档进行分类:

以下代码示例展示了如何使用 C# 对受密码保护的 PDF 文件进行分类

// 创建分类器
var classifier = new Classifier();

// 对受密码保护的文档进行分类
var response = classifier.Classify("password-protected.pdf", @"C:\Files\", password: "password");

// 显示分类信息
Console.WriteLine(response.BestClassName, response.BestClassProbability);

获得免费许可证

您可以通过请求 免费的临时许可证 来试用该 API,而不受评估限制。

结论

在本文中,您学习了如何使用 C# 对 PDF 文档进行分类。您还学习了如何使用 IAB-2 分类法和文档分类法对文档进行分类。此外,您还学习了如何在使用文件流而不是 C# 中的文件路径加载文档时对文档进行分类。您可以使用 文档 了解有关 .NET API 的 GroupDocs.Classification 的更多信息。如有任何歧义,请随时在 论坛 上与我们联系。

也可以看看