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

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

 

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

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

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

変換要件

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

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

// load XSLFO file with an instance of Document class
auto doc = MakeObject<Document>(u"template.xslfo");
// save XSLFO 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 Otp format
prs->Save(u"output.otp", Aspose::Slides::Export::SaveFormat::Otp);  

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

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

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

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

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

// instantiate a Presentation object that represents a OTP file
auto pres = System::MakeObject<Presentation>("output.otp");
// 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.otp", SaveFormat::Otp);

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

XSLFO を CSV に変換 (カンマ区切りの値)
XSLFO を DIF に変換 (データ交換フォーマット)
XSLFO を CSV に変換 (カンマ区切りの値)
XSLFO を FODS に変換 (OpenDocument フラット XML スプレッドシート)
XSLFO を MD に変換 (マークダウン言語)
XSLFO を ODP に変換 (OpenDocument プレゼンテーション形式)
XSLFO を ODS に変換 (OpenDocument スプレッドシート)
XSLFO を POTM に変換 (Microsoft PowerPoint テンプレート ファイル)
XSLFO を POTX に変換 (Microsoft PowerPoint テンプレートのプレゼンテーション)
XSLFO を POT に変換 (Microsoft PowerPoint テンプレート ファイル)
XSLFO を PPT に変換 (パワーポイントによるプレゼンテーション)
XSLFO を PPSM に変換 (マクロを有効にしたスライド ショー)
XSLFO を PPSX に変換 (PowerPoint スライド ショー)
XSLFO を PPS に変換 (PowerPoint スライド ショー)
XSLFO を PPTM に変換 (マクロが有効なプレゼンテーション ファイル)
XSLFO を PPT に変換 (パワーポイントによるプレゼンテーション)
XSLFO を SWF に変換 (ショックウェーブフラッシュムービー)
XSLFO を SXC に変換 (StarOffice Calc スプレッドシート)
XSLFO を TSV に変換 (タブ区切りの値)
XSLFO を TXT に変換 (テキストドキュメント)
XSLFO を XAML に変換 (XAMLファイル)
XSLFO を XLAM に変換 (Excel マクロ有効アドイン)
XSLFO を XLSB に変換 (Excel バイナリ ワークブック)
XSLFO を XLSM に変換 (マクロが有効なスプレッドシート)
XSLFO を XLTM に変換 (Excel マクロ有効テンプレート)
XSLFO を XLTX に変換 (Excel テンプレート)
XSLFO を XLT に変換 (Excel 97 - 2003 テンプレート)