PDF for WPF and Silverlight
画像の追加
PDF for WPF/Silverlight の概要 > 機能:PDF for WPF/Silverlight > 画像の追加

PDF for WPFドキュメントには画像も簡単に追加できます。すべての作業が C1PdfDocument.DrawImage メソッドによって処理されます。

C1PdfDocument.DrawImage は、指定された画像を指定された位置に描画し、パラメータで画像の配置とスケーリングを制御できます。次の例では、この画像は次のようになります。

このコードを使用すると、同じ画像が3回描画されます。

Visual Basic でコードを書く場合

Visual Basic
コードのコピー
Dim rect As Rect = pdf.PageRectangle
rect.Inflate(-150, -150)
Dim fs As Stream = File.Open("..\..\image.jpg", FileMode.Open)
' 書き込み可能なビットマップでイメージを書き込みます。
Dim bi As New BitmapImage()
bi.BeginInit()
bi.StreamSource = fs
bi.EndInit()
Dim wb = New WriteableBitmap(bi)
' 画像を四角形内の中心に配置し、アスペクト比を維持したままスケーリングします。
pdf.DrawImage(wb, rect, ContentAlignment.MiddleCenter, Stretch.Uniform)

C# でコードを書く場合

       
C#
コードのコピー
Rect rect = pdf.PageRectangle;
rect.Inflate(-150, -150);
           
 Stream fs = File.Open(@"..\..\image.jpg", FileMode.Open);

 // 書き込み可能なビットマップでイメージを書き込みます。
 BitmapImage bi = new BitmapImage();
 bi.BeginInit();
 bi.StreamSource = fs;
 bi.EndInit();
 var wb = new WriteableBitmap(bi);

 // 画像を四角形内の中心に配置し、アスペクト比を維持したままスケーリングします。
 pdf.DrawImage(wb, rect, ContentAlignment.MiddleCenter, Stretch.Uniform);
         

 

   

PDF ドキュメントは次のように表示されます。

 

メタファイルを含む通常の .NET Image オブジェクトもレンダリングできます。メタファイルはビットマップに変換されず、ドキュメント内で再生されるため、最適な解像度が維持されます。チャートや技術的な図面を PDF ドキュメントに追加する場合は、ビットマップではなくメタファイルの方が適しています。

ビットマップ画像は、PDF for WPF によって自動的に管理されます。同じ画像を(たとえば、ページヘッダーで)複数回レンダリングしても、画像の1つのコピーのみが PDF ファイルに保存されます。