私はC#でWebページをPDFファイルに変換するWebサービスを書いていNReco.PdfConverter
ますwkhtml
。
Web ページ (SharePoint 上の) は承認を必要とし、ユーザーが入力する必要があるフォームも含まれているため、Web サービスはそのページの URL にアクセスしてダウンロードするだけでは不十分です。
JavaScript と CSS ファイルも、SharePoint の多数の JS ファイルとスタイルシートを含む、フォームを正しくレンダリングするために重要です。
これまでのところ、私の最良のアイデアは次のとおりです。
ユーザーが [Generate PDF] をクリックすると、JavaScript は現在のページ全体を単一の文字列に変換します (CSS ファイルと JS ファイルをインラインで追加します)。
POST
を使用してその文字列を Web サービスに送信し$.ajax()
ます。を使用
NReco.PdfConverter
すると、その文字列を PDF に変換してファイルに保存するのは簡単です。var converter = new HtmlToPdfConverter { Margins = new PageMargins { Top = 0, Bottom = 0, Left = 0, Right = 0 }, CustomWkHtmlArgs = "--print-media-type" }; converter.GeneratePdf(htmlContent);
ブラウザーで単一ページの HTML (チェックボックスの状態、フォーム内のテキストなどを含む) を生成するという考えにどのようにアプローチするのでしょうか?
それは途方もなく複雑なことですか?誰かが別の解決策を知っていますか?