RenderPage0.vb
''
'' このコードは、DioDocs for PDF のサンプルの一部として提供されています。
'' © MESCIUS inc. All rights reserved.
''
Imports System.IO
Imports System.Drawing
Imports GrapeCity.Documents.Pdf
Imports GrapeCity.Documents.Text
Imports GrapeCity.Documents.Html
'' このサンプルは、URL で指定された Web ページを PDF にレンダリングする
'' 最も簡単な方法を紹介しています(ここでは、Google のホームページをレンダリングします)。
''
'' このサンプルでは、GcHtmlBrowser を使用して、指定された URI を読み込む
'' HtmlPage のインスタンスを生成し、HtmlPage.SaveAsPdf() メソッドを呼び出して
'' ページを PDF にレンダリングしています。
''
'' 他のコンテンツと一緒に HTML コンテンツを PDF ファイルに簡単に追加できる
'' 別のアプローチとして、HelloWorldHtml や他のサンプルのように、
'' 拡張メソッド GcPdfGraphics.MeasureHtml()/GcPdfGraphics.DrawHtml() を
'' 使用する方法があります。
'' なお、これらのメソッドには、GcHtmlBrowser のインスタンスをパラメータとして
'' 渡す必要があることに注意してください。
''
'' GcHtml をプロジェクトに追加する方法の詳細については、HelloWorldHtml
'' サンプルコードの上部にあるコメントのメモを参照してください。
Public Class RenderPage0
Sub CreatePDF(ByVal stream As Stream)
'' Web ページがレンダリングされる一時ファイルを取得します。
Dim tmp = Path.GetTempFileName()
'' レンダリングする Web ページの Uri。
Dim uri = New Uri("https://www.google.com")
'' HTML のレンダリングに使用する GcHtmlBrowser のインスタンスを生成します。
Using browser = Util.NewHtmlBrowser()
'' ソースWebページを一時ファイルにレンダリングします。
Using htmlPage = browser.NewPage(uri)
htmlPage.SaveAsPdf(tmp)
End Using
End Using
'' 作成した PDF を一時ファイルからターゲットストリームにコピーします。
Using ts = File.OpenRead(tmp)
ts.CopyTo(stream)
End Using
'' 一時ファイルを削除します。
File.Delete(tmp)
'' PDF ドキュメントを保存します。
End Sub
End Class