翻譯|使用教程|編輯:王香|2018-09-04 11:40:25.000|閱讀 320 次
概述:本文主要講解在Stimulsoft中Designer保存和加載報表。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
【下載Stimulsoft Reports.Ultimate最新版本】
此示例顯示如何在報表頁面上放置水印,頁面上的水印可以是文本,表達的結果或圖像。水印也可以放在頁面的任何位置。在此示例中,我們將添加文本水印。為此,我們使用報表的繪圖頁面事件:
static void Main()
{
StiPage.PagePainting += new StiPagePaintEventHandler(OnPagePainting);
StiPage.PagePainted += new StiPagePaintEventHandler(OnPagePainted);
Application.EnableVisualStyles();
Application.Run(new Form1());
}
private static void OnPagePainting(StiPage sender, StiPagePaintEventArgs e)
{
if (copyrightPosition == Position.Behind)
{
StiPage page = sender as StiPage;
DrawCopyright(page, e);
}
}
private static void OnPagePainted(StiPage sender, StiPagePaintEventArgs e)
{
if (copyrightPosition == Position.Front)
{
StiPage page = sender as StiPage;
DrawCopyright(page, e);
}
}
渲染水印的方法如下:
private static void DrawCopyright(StiPage page, StiPagePaintEventArgs e)
{
if (e.IsPrinting && (!printer))return;
if (e.IsDesigning && (!designer))return;
if ((!e.IsDesigning) && (!e.IsPrinting) && (!preview))return;
Rectangle rect = e.FullRectangle;
if (rectClient)rect = e.ClientRectangle;
using (Font font = new Font("Arial", 20 * (float)page.Zoom))
using (StringFormat sf = new StringFormat())
{
switch (copyrightPlace)
{
case Place.TopLeft:
sf.Alignment = StringAlignment.Near;
sf.LineAlignment = StringAlignment.Near;
break;
case Place.TopRight:
sf.Alignment = StringAlignment.Far;
sf.LineAlignment = StringAlignment.Near;
break;
case Place.Center:
sf.Alignment = StringAlignment.Center;
sf.LineAlignment = StringAlignment.Center;
break;
case Place.BottomLeft:
sf.Alignment = StringAlignment.Near;
sf.LineAlignment = StringAlignment.Far;
break;
case Place.BottomRight:
sf.Alignment = StringAlignment.Far;
sf.LineAlignment = StringAlignment.Far;
break;
}
e.Graphics.DrawString(copyrightString, font, Brushes.Red, rect, sf);
}
}
示例代碼的結果如下圖所示:

本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@ke049m.cn