DioDocs for Excel
DioDocs for Excel
背景画像への対応
ファイル操作 > PDF ファイルへのエクスポート > 背景画像への対応

DioDocs for Excelでは、ワークシートを PDF にエクスポートする際に、背景画像も含めることができます。これは、会社のロゴや透かしを PDF に出力したい場合に非常に便利です。

背景画像の描画

ワークシートでは、IWorksheet インタフェースの BackgroundPicture プロパティを使用して、背景画像を設定できます。

また、PdfSaveOptions クラスの PrintBackgroundPicture プロパティを使用して、ワークシートを PDF にエクスポートする際に、ページの中央に背景画像を描画するよう設定できます。

PDF にエクスポートする際にワークシートの背景画像を描画する方法については、次のサンプルコードを参照してください。

C#
コードのコピー
//ワークブックを初期化します
Workbook workbook = new Workbook();
//既定のワークシートを取得します 
IWorksheet worksheet = workbook.Worksheets[0];
worksheet.Range["A1"].Value = "GrapeCity Documents for Excel";
worksheet.Range["A1"].Font.Size = 25;

using (FileStream pictureStream = File.Open(@"grapecity.png", FileMode.Open, FileAccess.Read))
{
    MemoryStream pictureMemoryStream = new MemoryStream();
    pictureStream.CopyTo(pictureMemoryStream);
    byte[] picturebytes = pictureMemoryStream.ToArray();

    //ワークシートの背景画像を追加します
    worksheet.BackgroundPicture = picturebytes;
}
PdfSaveOptions pdfSaveOptions = new PdfSaveOptions();
//エクスポートされたPDFのページ中央に背景画像を印刷します
pdfSaveOptions.PrintBackgroundPicture = true;

//ワークブックをPDFに保存します
workbook.Save(@"PrintBackgroundPicture.pdf", pdfSaveOptions);

複数の背景画像の描画

IWorksheet インタフェースの BackgroundPictures プロパティを使用して、複数の背景画像を描画することができます。PDF 内の背景画像はグリッド線に基づいて描画され、出力先の矩形の座標を指定することにより、ドキュメントの任意の場所に配置することができます。

また、画像の透明度、枠線、角の半径、その他のフォーマットのオプションも適用できます。角の半径を設定する場合、最小値は「0」、最大値は出力先の矩形の高さまたは幅(どちらか小さい方)を2で割った値になります。ImageLayout 列挙型を使用して、PDF内の出力先の矩形を塗りつぶすために画像を配置する方法を指定することもできます。

DioDocs for Excel では、ToJSON メソッドを使用して、背景画像を JSON にエクスポートすることもできます。ただし、Excel にエクスポートする際には画像は破棄されます。

PDF にエクスポートする際にワークシートの複数の背景画像を描画する方法については、次のサンプルコードを参照してください。

C#
コードのコピー
Workbook workbook = new Workbook();
IWorksheet worksheet = workbook.Worksheets[0];

//ワークシートに2つの背景画像を追加します
IBackgroundPicture picture1 = worksheet.BackgroundPictures.AddPictureInPixel("logo.png", 100, 100, 350, 250);
IBackgroundPicture picture2 = worksheet.BackgroundPictures.AddPictureInPixel("watermark.png", 180, 10, 150, 100);

//対象の四角形の境界線スタイルを設定します
picture1.Line.Color.RGB = Color.Red;
picture1.Line.Weight = 1;

//背景画像は、対象の四角形を塗りつぶすようにサイズ変更されます。縦横比は保持されません
picture1.BackgroundImageLayout = ImageLayout.Tile;
//対象の四角形の角の半径を設定します
picture1.CornerRadius = 50;
//背景画像の透明度を設定します
picture1.Transparency = 0.5;
picture2.Transparency = 0.5;

//ワークブックをPDFに保存します
workbook.Save("ExportBackgroundImageToPDF.pdf");

制限事項

JSON にエクスポートする際、最初のワークシートから最後のワークシートまでで最初に見つかった背景画像を使用します。

 

ワークシートに背景画像を追加する方法の詳細については、「ワークシートのカスタマイズ」を参照してください。