私は、WebページをPDFファイルに変換するNReco.PdfConverter
とwkhtml
を使用してC#でWebサービスを作成しています。ページのHTML + CSS + JS全体を取得してWebサービスに送信
Webページ(SharePoint上)は、承認が必要であり、ユーザーが入力する必要があるフォームも含まれているため、WebサービスはそのページのURLに簡単にアクセスしてダウンロードすることはできません。
JavaScriptとCSSファイルは、SharePointからの数多くのJSファイルとスタイルシートを含め、フォームの正しいレンダリングにも重要です。
これまでのところ私の最高のアイデアはこれです:
ユーザーは「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を生成するという考えに近づくだろうチェックボックスの状態、フォーム内のテキストなど)をブラウザに表示しますか?
これはすごく複雑ですか?誰かが別の解決策を知っていますか?
は、私は答えに、基本的な認証のためのコードスニペットを追加しました – K48
= "PASS --password --username LOGIN" CustomWkHtmlArgsで働いていました –