Andy_Uncle 发表于 2016-12-2 11:28:10

【分享】Active Report 打印图片代码

本帖最后由 Andy_Uncle 于 2016-12-2 12:01 编辑

1、需求:在Active Report中实现图片打印,如产品资料中的图片,职员信息中的图片等。

2、实现方法:
将以下代码请复制放置到报表配置容器中,如下图:


代码如下:
/// <summary>
/// 绑定图片
/// </summary>
///<param name="pic">icture对象,用于显示图片</param>
///<param name="hiddenControl">隐藏域对象,用于绑定图片的路径,以间接实现显示图片</param>
/// <returns></returns>
public void BindPicture(GrapeCity.ActiveReports.SectionReportModel.Picture pic,
      GrapeCity.ActiveReports.SectionReportModel.TextBox hiddenControl)
{
      pic.Image = null;
      string fileURL = string.Empty;
      try
      {
                fileURL = hiddenControl.Value.ToString();
      }
      catch
      {

      }
      if(string.IsNullOrEmpty(fileURL))
      {
                return;
      }

      System.IO.Stream stream = GetStreamFromURL(fileURL);
      if (stream == null)
      {
                return;
      }
      pic.Image = System.Drawing.Image.FromStream(stream);

      //释放资源
      try
      {
                if(stream != null)
                {
                        stream.Close();
                }
      }
      catch
      {

      }
}

/// <summary>
/// 得到图片流
/// </summary>
/// <param name="picURL">图片URL</param>
/// <returns></returns>
public System.IO.Stream GetStreamFromURL(string picURL)
{
      if(string.IsNullOrEmpty(picURL))
      {
                return null;
      }
      System.Net.WebResponse response = null;
      System.IO.Stream stream = null;
      try
      {
                System.Net.HttpWebRequest request = (System.Net.HttpWebRequest) System.Net.WebRequest.Create(picURL);
                response = request.GetResponse();
                stream = response.GetResponseStream();
      }
      catch
      {

      }
      return stream;
}



public void 明细_Format()
{
      //绑定产品图片
      //this.Picture1 图片控件ID
      //this.TextBox2 图片路径ID
      BindPicture(this.Picture1, this.TextBox2);
}


备注说明:

//this.Picture1 图片控件ID
//this.TextBox2 图片路径ID
这两个根据实际情况替换即可。





3、调试效果


到此配置完成。





ZenosZeng 发表于 2016-12-2 11:29:58

:hjyzw:

Lenka.Guo 发表于 2016-12-2 11:34:22

本帖最后由 Lenka.Guo 于 2016-12-2 11:38 编辑

:i0tw::i0tw::i0tw::i0tw:
奖励10000金币~~

页: [1]
查看完整版本: 【分享】Active Report 打印图片代码