C++アプリケーション内でXPSをXAMLにレンダリングする

Microsoft ® PowerPointを使用せずに、C++アプリケーション内でXPSをXAMLに変換する

 

C++アプリケーション内にXPSからXAMLへの変換機能を統合するために追加しようとしているC++開発者ですか?あなたは2つの簡単なステップでそれを行うことができます。 Aspose.PDF for C++ を使用して、XPSをPPTXにエクスポートできます。次に、 Aspose.Slides for C++ を使用して、PPTXをXAMLに変換できます。どちらのAPIも Aspose.TotalforC++ パッケージに含まれています。

XPSをXAMLにエクスポートするためのC++API

  1. ドキュメント クラスリファレンスを使用してXPSファイルを開きます
  2. Save メソッド関数を使用してXPSをPPTXに変換します
  3. プレゼンテーション クラスリファレンスを使用してPPTXドキュメントをロードします
  4. Save メンバー関数を使用してドキュメントをXAML形式で保存し、「Xaml」をSaveFormatとして設定します

変換要件

コマンドラインからnuget install Aspose.Total.Cppとしてインストールするか、VisualStudioのパッケージマネージャーコンソールからInstall-PackageAspose.Total.Cppを使用してインストールします。

または、 ダウンロード からオフラインMSIインストーラーまたはDLLをZIPファイルで取得します。

// load XPS file with an instance of Document class
auto doc = MakeObject<Document>(u"template.xps");
// save XPS as PPTX format 
doc->Save(u"PptxOutput.pptx", SaveFormat::Pptx);
// instantiate a Presentation object that represents a PPTX file
SharedPtr<Presentation> prs = MakeObject<Presentation>(u"PptxOutput.pptx");
// save the presentation as Xaml format
prs->Save(u"output.xaml", Aspose::Slides::Export::SaveFormat::Xaml);  

C++を介してXPSドキュメントのパスワードを変更する

XPSをXAMLにレンダリングする過程で、パスワードで保護されたXPSを開き、そのパスワードを変更することもできます。 XPSファイルのパスワードを変更するには、そのドキュメントの所有者パスワードを知っている必要があります。 Aspose.PDF for C++ でパスワードで保護されたPDFドキュメントをロードするには、所有者のパスワードを指定し、ChangePasswordsメソッドを使用してパスワードを変更します。

// load an existing XPS Document
auto doc = MakeObject<Document>(L"input.xps", L"owner");
// change password of XPS Document
doc->ChangePasswords(L"owner", L"newuser", L"newuser");
// save the document
doc->Save(L"output.Doc");

C++を介してXAMLファイルにWebから画像を追加する

XPSをXAMLに変換した後、Webから出力ドキュメントに画像を追加することもできます。 Aspose.Slides for C++ は、JPEG、PNG、BMP、GIFなどの一般的な形式の画像での操作をサポートしています。コンピューター上の1つまたは複数の画像をプレゼンテーションのスライドに追加できます。 C++のこのサンプルコードは、XAMLファイルに画像を追加する方法を示しています

// instantiate a Presentation object that represents a XAML file
auto pres = System::MakeObject<Presentation>("output.xaml");
// get slide
auto slide = pres->get_Slides()->idx_get(0);
// initialize Web Client    
auto webClient = System::MakeObject<WebClient>();
// get image data
auto imageData = webClient->DownloadData(System::MakeObject<Uri>(u"[REPLACE WITH URL]"));
// add image
auto image = pres->get_Images()->AddImage(imageData);
// add picture frame
slide->get_Shapes()->AddPictureFrame(ShapeType::Rectangle, 10.0f, 10.0f, 100.0f, 100.0f, image);
// save updated file
pres->Save(u"updated.xaml", SaveFormat::Xaml);

XPS の変換オプションを C++ で探索

XPS を CSV に変換 (カンマ区切りの値)
XPS を DIF に変換 (データ交換フォーマット)
XPS を DOCM に変換 (Microsoft Word 2007 マルコ ファイル)
XPS を DOTM に変換 (Microsoft Word 2007+ テンプレート ファイル)
XPS を DOTX に変換 (Microsoft Wordテンプレートファイル)
XPS を DOT に変換 (Microsoft Wordテンプレートファイル)
XPS を CSV に変換 (カンマ区切りの値)
XPS を FLATOPC に変換 (Microsoft Word 2003 ワードプロセッサML)
XPS を FODS に変換 (OpenDocument フラット XML スプレッドシート)
XPS を GIF に変換 (グラフィカル交換フォーマット)
XPS を MARKDOWN に変換 (軽量マークアップ言語)
XPS を MD に変換 (マークダウン言語)
XPS を ODP に変換 (OpenDocument プレゼンテーション形式)
XPS を ODS に変換 (OpenDocument スプレッドシート)
XPS を ODT に変換 (OpenDocument テキスト ファイル形式)
XPS を OTP に変換 (OpenDocument標準フォーマット)
XPS を OTT に変換 (OpenDocument テンプレート)
XPS を PCL に変換 (プリンターコマンド言語)
XPS を POTM に変換 (Microsoft PowerPoint テンプレート ファイル)
XPS を POTX に変換 (Microsoft PowerPoint テンプレートのプレゼンテーション)
XPS を POT に変換 (Microsoft PowerPoint テンプレート ファイル)
XPS を POWERPOINT に変換 (プレゼンテーションファイル)
XPS を PPSM に変換 (マクロを有効にしたスライド ショー)
XPS を PPSX に変換 (PowerPoint スライド ショー)
XPS を PPS に変換 (PowerPoint スライド ショー)
XPS を PPTM に変換 (マクロが有効なプレゼンテーション ファイル)
XPS を PPT に変換 (パワーポイントによるプレゼンテーション)
XPS を PS に変換 (ポストスクリプトファイル)
XPS を RTF に変換 (リッチテキスト形式)
XPS を SWF に変換 (ショックウェーブフラッシュムービー)
XPS を SXC に変換 (StarOffice Calc スプレッドシート)
XPS を TSV に変換 (タブ区切りの値)
XPS を TXT に変換 (テキストドキュメント)
XPS を WORDML に変換 (Microsoft Word 2003 ワードプロセッサML)
XPS を XAMLFLOW に変換 (MicrosoftのPower Automate)
XPS を XLAM に変換 (Excel マクロ有効アドイン)
XPS を XLSB に変換 (Excel バイナリ ワークブック)
XPS を XLSM に変換 (マクロが有効なスプレッドシート)
XPS を XLTM に変換 (Excel マクロ有効テンプレート)