PowerPointファイルのHTML変換後のファイルサイズ

サポート担当者の皆様
お世話になります。

GroupDocs.Viewer.NETのV17.2.0を現在まで利用していましたが、最新版のV18.1.0をテストしています。

PowerPointファイルのHTML変換を検証したところ、V18.1.0では、1スライド(1ページ)あたりのHTMLのサイズが10-50MB程度の非常に大きなサイズとなります。
以前のV17.2.0で同じPowerPointファイルをHTML変換しますと、1スライド(1ページ)あたり数百KB程度のサイズとなります。

V18.1.0では、PowerPointプレゼンテーションに使用されているフォントのバイナリデータがBase64エンコードされた状態で埋め込まれており、非常に大きなサイズとなっているように見えます。

HTMLでの再現性が非常に高くなっているのは喜ばしいのですが、数ページのPowerPointプレゼンテーションでHTMLのサイズ合計が数百MBにもなってしまうため、スペックの高くないPCのブラウザではフリーズして描画できませんし、インターネット経由でのHTML表示では通信データ量による高額の費用請求となりかねません。

V18.1.0において、オプション指定などによって以前までの軽量なHTMLを出力する手段は提供されていないでしょうか?

よろしくお願いします。

@Hayakawa_Ikuro,

GroupDocs.Viewerをご利用いただき、ありがとうございました。 最後に問題を調査するため、詳細をお知らせください。

  • 問題のあるPowerPoint文書
  • ドキュメントのレンダリングに使用しているソースコード

私たちはあなたからのご意見をお待ちしております。

@usman.aziz san,

ご返信ありがとうございます。

・Problematic PowerPoint document
・Source code you are using to render the document
は、どのような手段でお渡しすればよいでしょうか?

よろしくお願いします。

@Hayakawa_Ikuro,

お返事をありがとうございます。 ドキュメントとソースコードをzipアーカイブに入れ、ツールバーのアップロードボタンを使用して添付することができます(スクリーンショットを参照)。

@usman.aziz san,

ご返信ありがとうございます。

・Problematic PowerPoint document
・Source code you are using to render the document
をこのメッセージに添付します。
GroupDocs.Viewer.Test.zip(235.9 KB)

※ VisualStudio2015のC#プロジェクトです。
※ PowerPointドキュメントは、「_testfiles」フォルダに入っています。
※ GroupDocs.Viewer.dllは容量が大きいため削除してあります。 nugetパッケージマネージャーから取得してください。
※ 必要でしたら、ライセンスファイル(.lic)はアセンブリ(.exe)と同じフォルダに入れてください。

よろしくお願いします。

@Hayakawa_Ikuro,

必要な詳細を提供していただきありがとうございます。

私たちは同じ行動を私たちの側で経験することができます。 したがって、製品チームによるさらなる調査のため、問題追跡システムにログオンしています。 更新があった場合はお知らせします。

一方で、リソース(フォント、CSS、イメージなど)を外部に保存することもできます。 これにより、HTMLページのサイズが縮小され、リソースが個別に保持されます。 あなたはダウンロードすることができます この サンプルアプリケーションは、リソースを外部に保存する方法を示します。 アプリケーションは、_bin / output_フォルダーに生成されたHtmlページを生成します。

@Hayakawa_Ikuro,

ご報告いただいた問題に関して、製品チームからの最新情報を取得しました。以前のバージョンのAPIでは、結果のHTMLでフォントを保存/埋め込み、デバイスにインストールされているフォントが使用されていました。ただし、レンダリングの結果を向上させるために、フォントの保存/埋め込み機能をHTMLに追加しました。この機能の利点は、フォントがデバイスにインストールされていない場合でも、出力HTMLのテキストがソースドキュメントと同じフォントで表示されることです。 v18.1で生成されるHTMLのサイズが大きくなる理由は、フォントを埋め込むためです。

結果として得られるHTMLの最小サイズを取得したい場合は、フォントを外部に保存するか(提供されている サンプルアプリケーションを参照)または HtmlOptions クラスの ExcludeFonts オプションを使用する。 ExcludeFonts オプションの詳細については、ドキュメンテーションをご覧ください。 それが役に立てば幸い。

@usman.aziz san,

詳細な情報を共有いただき、ありがとうございます。

結果としまして、GroupDocs.Viewer.Converter.Options.HtmlOptions.ExcludeFontsプロパティにtrueを設定することで、以前(V17.2.0の頃)と同様のHTMLが出力されましたので、このプロパティを追加で指定したいと思います。

もう一方の「フォントを外部に保存する」方法(サンプルアプリケーションのもの)も試してみましたが、ttfファイル(フォントバイナリ)のほか、画像やStyleSheetも外部ファイルとして出力されるオプションでしたので、採用できませんでした。
(当社のアプリケーションでは、ASP.NET MVCのレスポンスとして画像やStyleSheet情報が埋め込まれている単一のHTMLとして出力される必要があります。)

FYI:
ExcludeFontsプロパティにtrueを設定すると、OSにそのフォントがインストールされていないと別のフォントで描画されてしまいますが、当社では、出力されたHTMLに対しクライアントサイド(javascript)ですべてのタグに対し[lengthAdjust:spacingAndGlyphs]の要素を後付けすることで、見映えの補正を行っております。

不明点が解消されましたため、本問合せはクローズとしていただけますでしょうか?
※ 本問合せは「private」指定をしておりましたが、もし今から変更が可能なようでしたら、ユーザ全体への情報共有のため「private」指定を解除していただいても大丈夫です。

よろしくお願いします。

@Hayakawa_Ikuro,

お返事をありがとうございます。

その場合は、ExcludeFonts オプションが適しています。

あなたのポイントが解決されたことを知ってよかったです。 あなたが最後にすべてが明白だと思うなら、私たちはその話題を閉じることができます。 さらに、トピックにあなたの個人情報が含まれていない場合は、トピックの最初の投稿を編集し、「プライベートトピック」チェックボックスをオフにして他のユーザーが利用できるようにすることができます。 混乱が生じた場合は、お気軽にお問い合わせください。

@usman.aziz san,

ご返信ありがとうございます。
最初の投稿を編集し、Private 設定を解除することができました。

不明点はありませんので、クローズをお願いいたします。

@Hayakawa_Ikuro,

お返事をありがとうございます。 トピックはクローズされています。