XPS から DOCX C# へ

XPSDOCX は、異なる目的のために設計された 2 つの異なるファイル形式です。 XPS は Microsoft によって作成された電子ペーパー形式で、主にドキュメントの忠実性の共有と保存に使用されます。一方、DOCX は Microsoft Word のデフォルトのファイル形式であり、テキストの書式設定や画像などの幅広い機能が含まれています。場合によっては、XPS を DOCX ドキュメント形式に変換する必要がある場合があります。したがって、このブログ投稿では、C# で XPS を DOCX Word ドキュメントに変換する方法について説明します。

XPS を DOCX 形式に変換する理由

XPS と DOCX には両方の利点があるにもかかわらず、XPS から DOCX への変換が不可欠になる状況が発生します。多くの場合、互換性の問題、共同プロジェクト、または高度な書式設定機能の必要性により、この変換が必要になります。 XPS から Word DOCX への変換の利点のいくつかを以下に示します。

検索性の向上: DOCX ファイルは高度な検索機能とインデックス作成機能を提供し、ユーザーはドキュメント内の特定のコンテンツをすばやく見つけることができます。これは、大規模なドキュメントやアーカイブの場合に特に有益となり、情報の検索を合理化し、貴重な時間を節約します。

アクセシビリティ機能: アクセシビリティはドキュメント作成の重要な側面です。 Word DOCX ファイルは、画像の代替テキストや高度な文書構造など、幅広いアクセシビリティ機能をサポートしています。 XPS ファイルを DOCX に変換すると、ドキュメントがアクセシビリティ標準に準拠し、より包括的でユーザーフレンドリーになります。

編集可能性と書式保持: Word DOCX ファイルは、XPS ファイルと比較して高度な編集機能を提供します。 XPS を DOCX に変換すると、ユーザーは豊富な書式設定オプションにアクセスできるようになり、ドキュメントの編集やカスタマイズが容易になります。この移行により、フォント、レイアウト、スタイル要素が確実に保持され、元のドキュメントの整合性が維持されます。

強化された互換性: XPS ファイルは広く使用されていますが、さまざまなプラットフォーム間で互換性の問題に直面する可能性があります。広く受け入れられている DOCX 形式に変換すると、Microsoft Word、Google Docs などの一般的な文書処理ソフトウェアとのシームレスな統合が保証されます。

C# で XPS を Word DOCX に変換する

C# で XPS を DOCX に変換するには、以下の手順に従う必要があります。

  • Conholdate.Total for .NET を側にインストールします。
  • XPS 入力ストリームと PDF 出力ストリームを Stream クラスで初期化します。
  • XpsDocumentクラスを使用してXPSファイルを読み込みます。
  • 必要なパラメータを使用して PdfSaveOptions オブジェクトを初期化します。
  • PdfDevice クラスを使用してレンダリング デバイスを作成します。
  • Document クラスを使用して中間 PDF ファイルを保存およびロードします。
  • Save メソッドを使用して XPS を Word DOCX ドキュメントに変換します。

以下のサンプル コードは、C# で XPS を DOCX に変換する方法を示しています。

// PDF出力ストリームを初期化する
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "XPStoDOCX.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
{

    // XPS入力ストリームを初期化する
    System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "sample.xps", System.IO.FileMode.Open);

    // 入力 XPS ドキュメントを読み込みます
    Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());

    // 必要なパラメータを使用してオプション オブジェクトを初期化します
    Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
    {
        JpegQualityLevel = 100,
        ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
    };
    // PDF 形式用のレンダリング デバイスを作成する
    Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

    // 出力された PDF ファイルを保存する
    document.Save(device, options);
}
// 中間PDFファイルをロードする
Aspose.Pdf.Document pdfDocument = new Aspose.Pdf.Document(dataDir + "XPStoDOCX.pdf");

// 出力されたDOCXファイルを保存します。
pdfDocument.Save(dataDir + "XPStoDOCX.docx", Aspose.Pdf.SaveFormat.DocX);

無料の評価ライセンス

無料の一時ライセンスをリクエストすることで、API のあらゆる機能を制限なくテストできます。

まとめ

C# で XPS を DOCX に変換すると、可能性の世界が広がり、異なるファイル形式間のギャップを簡単に埋めることができます。このブログ投稿で概説されているプロセスは、要件に応じて XPS を DOC または DOCX ファイル形式の Word 文書に変換する簡単なソリューションを提供します。さらに、懸念事項について話し合いたい場合は、フォーラム までお気軽にご連絡ください。

よくある質問

C# を使用して、複雑な形式の XPS ファイルを DOCX に変換できますか?

はい、テキスト、画像、表などを含むさまざまな書式要素を含む XPS ファイルを変換できます。

C# での変換プロセス中のエラーはどのように処理すればよいですか?

例外を適切に処理し、エラーが発生した場合にユーザーに意味のあるフィードバックを提供するために、コードに適切な try-catch ブロックが含まれていることを確認してください。

大きな XPS ファイルを C# で DOCX に変換するときにパフォーマンスを考慮する必要はありますか?

はい、パフォーマンスは XPS ファイルのサイズと複雑さによって異なる場合があります。最適なパフォーマンスとリソース管理を確保するために、さまざまなファイルの種類とサイズで変換プロセスをテストすることをお勧めします。

関連項目