XPSドキュメントをXPSおよびPDFに結合
複数のXPSファイルを組み合わせるための.NET APIソリューション
XPSは1つのファイルに複数のドキュメントを保持できるほか、XPSドキュメントには複数のページを含めることができます。Aspose.Page APIソリューションが提供する結合機能は、いくつかのファイルを1つに組み合わせることができるように開発されています。その結果、結合されたすべてのファイルの内容を含むXPSまたはPDFファイルが得られます。ここでは、C# .NETでXPSを結合する方法のコード例を確認できます。このような機能がWebソリューションにどのように実装されるかを確認したり、オンラインでファイルを結合したりするには、 XPS Merger をお試しください。
XPSファイルを結合するには、以下が必要です:
C#プラットフォーム向けの機能豊富で強力、かつ使いやすいドキュメント操作および変換APIであるAspose.Page for .NET API。
NuGetパッケージマネージャーを開き、Aspose.Pageを検索してインストールします。パッケージマネージャーコンソールから次のコマンドを使用することもできます。
Package Manager Console Command
PM> Install-Package Aspose.Page
C# .NETを使用して複数のXPSファイルを1つに結合する手順。
- ドキュメントディレクトリへのパスを設定します。
- XPS出力ストリームを初期化します。
- XPSファイル入力ストリームを初期化します。
- XpsDocumentクラス を使用してストリームからXPSドキュメントをロードするか、ファイルから直接ロードします。この場合、xpsStreamは不要です。
- 最初のファイルと結合するXPSファイルの配列を作成します。
- XPSファイルを結合して出力XPSドキュメントにします。
XPSをXPSに結合するC#コード
using Aspose.Page.XPS; // The path to the documents directory.
string dataDir = RunExamples.GetDataDir_WorkingWithDocumentMerging();
// Load XPS document from XPS file
XpsDocument document = new XpsDocument(dataDir + "input.xps", new XpsLoadOptions());
// Create an array of XPS files that will be merged with the first one
string[] filesToMerge = new string[] { dataDir + "Demo.xps", dataDir + "sample.xps" };
// Merge XPS files to output XPS document
document.Merge(filesToMerge, dataDir + "mergedXPSfiles.xps");
}C# .NETを使用して複数のXPSをPDFに結合する手順。
- ドキュメントディレクトリへのパスを設定します。
- PDF出力ストリームを初期化します。
- XPSファイル入力ストリームを初期化します。
- XpsDocumentクラスを使用してストリームからXPSドキュメントをロードするか、ファイルから直接ロードします。この場合、xpsStreamは不要です。
- PdfSaveOptions クラスを使用して、出力ファイルに必要なパラメーターでオプションオブジェクトを初期化します。
- PdfDevice クラスを使用して、PDF形式のレンダリングデバイスを作成します。
- 最初のファイルと結合するXPSファイルの配列を作成します。
- XPSファイルを結合して出力XPSドキュメントにします。
XPSをPDFに結合するC#
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_WorkingWithDocumentMerging();
// Initialize the PDF output stream
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "mergedXPSfiles.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// Initialize the XPS input stream
using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "input.xps", System.IO.FileMode.Open))
{
// Load the XPS document form the stream
XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
// or load it directly from a file. No xpsStream is needed then.
// XpsDocument document = new XpsDocument(inputFileName, new XpsLoadOptions());
// Initialize options object with the necessary parameters.
Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
{
JpegQualityLevel = 100,
ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate
};
// Create a rendering device for the PDF format
Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);
// Create an array of XPS files that will be merged with the first one
string[] filesToMerge = new string[] { dataDir + "Demo.xps", dataDir + "sample.xps" };
// Merge XPS files to the output PDF document
document.Merge(filesToMerge, device, options);
}よくある質問
1. XPS ファイルを結合するにはどうすればよいですか?
ドキュメント ディレクトリへのパスを設定し、出力ストリームと入力ストリームを初期化します。ストリームまたはファイルから XPS ファイルをロードし、それらを結合します。 XPS ファイルをオンラインでマージしたい場合は、無料のクロスプラットフォーム XPS Merger を使用してください。
2. どのような出力形式がサポートされていますか?
Aspose.Page ソリューションでは、XPS ファイルを 1 つの XPS ファイルまたは PDF ファイルに結合できるようになりました。
3. 機能は無料ですか?
クロスプラットフォーム マージャーは無料です。API ソリューションの場合は、無料トライアルを取得して、必要に応じて製品を購入できます。
XPS XPS ファイル形式とは
XPS (XML Paper Specification) は、Microsoft が提供する PDF の代替フォーマットです。XML/HTML ベースで、プラットフォームに依存せずレイアウトを保持します。