itextsharp处理一个组与非一个组内的元素-创新互联

string filename = DateTime.Now.ToString("yyyyMMddHHmmss").ToString() + ".pdf";
   float w = PageSize.A4.Width;
   float h = PageSize.A4.Height;
   Rectangle rect = new Rectangle(0, 0, w, h);
   Document document = new Document(rect);
   PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(Server.MapPath(filename), FileMode.Create));

屯溪ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!

  document.Open();
   PdfContentByte content = writer.DirectContent;
   PdfTemplate template = content.CreateTemplate(rect.Width, rect.Height);
   PdfGState state = null;
   template.SaveState();

  template.SetColorFill(Color.RED);
   template.SetColorStroke(Color.GREEN);
   template.SetLineWidth(3);
   state = new PdfGState();
   state.FillOpacity = 0.5f;
   state.AlphaIsShape = false;
   template.SetGState(state);
   template.Rectangle(100, 100, 100, 100);
   template.FillStroke();
   template.RestoreState();

  template.SaveState();
   template.SetColorFill(Color.RED);
   template.SetColorStroke(Color.BLUE);
   template.SetLineWidth(3);
   state = new PdfGState();
   state.FillOpacity = 0.5f;
   state.AlphaIsShape = false;
   template.SetGState(state);
   template.Rectangle(150, 150, 100, 100);
   template.FillStroke();
   template.RestoreState();

  template.SaveState();

//处理同一组内的元素,设置组的透明度为0.5,这样组内元素重叠的时候是后画的图形覆盖先画的图形,不会应为设置了透明度,让元素重叠的部分颜色加深或者相互影响
   state = new PdfGState();
   state.FillOpacity = 0.5f;//设置透明度为0.5
   template.SetGState(state);
   PdfTemplate _template = template.CreateTemplate(rect.Width, rect.Height);

//设置透明为为一个组
   PdfTransparencyGroup group = new PdfTransparencyGroup();
   group.Isolated = false;//标示是否独立

  _template.Group = group;
   _template.SaveState();
   _template.SetColorFill(Color.RED);
   _template.SetColorStroke(Color.GREEN);
   _template.SetLineWidth(3);
   _template.Rectangle(300, 100, 100, 100);
   _template.FillStroke();
   _template.RestoreState();

  _template.SaveState();
   _template.SetColorFill(Color.RED);
   _template.SetColorStroke(Color.BLUE);
   _template.SetLineWidth(3);
   _template.Rectangle(350, 150, 100, 100);
   _template.FillStroke();
   _template.RestoreState();

  template.AddTemplate(_template, 0, 0);

  template.RestoreState();
   content.AddTemplate(template, 1, 0, 0, -1, 0, rect.Height);
   document.Close();

创新互联www.cdcxhl.cn,专业提供香港、美国云服务器,动态BGP最优骨干路由自动选择,持续稳定高效的网络助力业务部署。公司持有工信部办法的idc、isp许可证, 机房独有T级流量清洗系统配攻击溯源,准确进行流量调度,确保服务器高可用性。佳节活动现已开启,新人活动云服务器买多久送多久。


网站题目:itextsharp处理一个组与非一个组内的元素-创新互联
分享网址:http://ybzwz.com/article/dohojp.html