C++ API を使用してドキュメントを解析する

Aspose.Total for C++ を使用して、Microsoft Word、Excel、PowerPoint プレゼンテーション、PDF ファイルからテキストまたは画像を抽出します。

 

ドキュメントの解析には、Microsoft Word、Excel、PowerPoint、PDF ファイルなどの非構造化ドキュメントから構造化データを抽出することが含まれます。 これは、ドキュメントのコンテンツを分析して、テキスト、表、画像、メタデータなどの関連情報を特定して抽出するプロセスです。 ドキュメントの解析は、データ抽出、コンテンツ分析、情報検索、ドキュメント処理など、さまざまな理由で不可欠です。

ドキュメントを解析するための C++ アプリケーションを開発すると、大きな利点が得られます。 C++ の高いパフォーマンスと効率性により、大量のドキュメントを迅速かつ確実に処理できます。 これにより、最適なパフォーマンスでさまざまな形式を処理できる堅牢な解析アルゴリズムが保証されます。 さらに、C++ アプリケーションは、特定の解析要件を満たすようにカスタマイズでき、オフライン機能、データ プライバシー、セキュリティを提供し、さまざまな業界やユース ケースにわたるドキュメント解析のニーズに対応する多用途で信頼性の高いソリューションになります。

Microsoft Word ファイルを解析する

Aspose.Total for C++ を使用して Word 文書を解析すると、いくつかの利点があります。 まず、Aspose.Total for C++ は Word ドキュメントの効率的な解析に特化した API を提供し、C++ アプリケーションへのシームレスな統合を保証します。 これにより、テキスト、書式設定、テーブル、メタデータなどの構造化データを正確かつ確実に抽出することが容易になります。 第二に、Aspose.Total for C++ は Word 文書の解析において高いパフォーマンスと効率性を提供し、大量のファイルを迅速に処理することを可能にします。 これにより、複雑なドキュメントや大規模なドキュメント リポジトリを扱う場合でも、最適なパフォーマンスが保証されます。 さらに、C++ 解析ライブラリによりオフライン機能が確保され、インターネットに依存せずに解析を実行できるため、データのプライバシーとセキュリティが確保されます。

C++ コード - Microsoft Word ファイルを解析する

System::String inputDataDir = GetInputDataDir_WorkingWithImages();
System::String outputDataDir = GetOutputDataDir_WorkingWithImages();
System::SharedPtr<Document> doc = System::MakeObject<Document>(inputDataDir + u"Image.SampleImages.doc");
System::SharedPtr<NodeCollection> shapes = doc->GetChildNodes(NodeType::Shape, true);
int32_t imageIndex = 0;
for (System::SharedPtr<Shape> shape : System::IterateOver<System::SharedPtr<Shape>>(shapes))
{
if (shape->get_HasImage())
{
System::String imageFileName = System::String::Format(u"Image.ExportImages.{0}.{1}", imageIndex, FileFormatUtil::ImageTypeToExtension(shape->get_ImageData()->get_ImageType()));
System::String imagePath = outputDataDir + imageFileName;
shape->get_ImageData()->Save(imagePath);
std::cout << "Image saved at " << imagePath.ToUtf8String() << std::endl;
imageIndex++;
}
}

Microsoft Powerpoint プレゼンテーションを解析する

Aspose.Total for C++ を使用して PowerPoint プレゼンテーションを解析すると、スライド コンテンツ、画像、メモなどの構造化データをシームレスに統合し、効率的に抽出できます。特殊な API を使用すると、開発者は大量のファイルを処理する場合でも、高いパフォーマンスと信頼性を実現できます。カスタマイズ可能な解析オプションにより、プロセスを特定の要件に合わせて調整することができ、柔軟性と正確性が保証されます。

C++ コード - Microsoft Powerpoint プレゼンテーションを解析する

const String sourceFilePath = u"SourcePath\sourceFile.pptx";
SharedPtr<Presentation> presentation = MakeObject<Presentation>(sourceFilePath);
System::ArrayPtr<SharedPtr<ITextFrame>> textFramesSlideOne = SlideUtil::GetAllTextBoxes(presentation->get_Slides()->idx_get(0));
for (int i = 0; i get_Length(); i++){
for (SharedPtr<IParagraph> paragraph : textFramesSlideOne[i]->get_Paragraphs()){
for (SharedPtr<IPortion> portion : paragraph->get_Portions()){
Console::WriteLine(portion->get_Text());
}
}
}

PDF ファイルを解析する

Aspose.Total for C++ を使用して PDF ドキュメントを解析すると、大きなメリットが得られます。 特殊な API を使用すると、C++ アプリケーションにシームレスに統合できるため、テキスト、画像、メタデータなどの構造化データを効率的に抽出できます。 Aspose.Total for C++ は、大量の PDF ファイルを処理する場合でも高いパフォーマンスと信頼性を保証し、最適な解析結果を保証します。 カスタマイズ可能な解析オプションにより、開発者はプロセスを特定の要件に合わせて調整し、柔軟性と精度を確保できます。

C++ コード - PDF ファイルを解析する

String _dataDir("C:\\Samples\\Parsing\\");
String infilename("sample-4pages.pdf");
String outfilename("extracted-text.txt");
auto document = MakeObject<Document>(_dataDir + infilename);
auto textAbsorber = MakeObject<TextAbsorber>();
document->get_Pages()->Accept(textAbsorber);
auto extractedText = textAbsorber->get_Text();
System::IO::File::WriteAllText(_dataDir + outfilename, extractedText);