apose在word生成表格

apose生成word表格的时候,要显插入书签,然后在插入书签的地方有两种方式可以进行操作:1、填充单元格,即一个单元格一个书签2、根据书签,在书签处画表格

1、画表格

Aspose.Words.Document doc = new Aspose.Words.Document("demo.doc");
 DocumentBuilder builder = new DocumentBuilder(doc);
                        builder.MoveToBookmark("sq");//书签
                        builder.StartTable();//开始画Table              
                        builder.ParagraphFormat.Alignment = ParagraphAlignment.Center; // RowAlignment.Center;                  
                        string str = string.Empty;
                        builder.RowFormat.Height = 20;
                        //添加每行数据  
                        for (int i = 0; i < item.Rows.Count; i++)
                        {
                            for (int j = 0; j < item.Columns.Count; j++)
                            {
                                str = item.Rows[i][j].ToString();
                                //插入Table单元格  
                                builder.InsertCell();
                                //Table单元格边框线样式  
                                builder.CellFormat.Borders.LineStyle = LineStyle.Single;
                                //Table此单元格宽度 跟随列头宽度  
                                //builder.CellFormat.Width = 500;  
                                //此单元格中内容垂直对齐方式  
                                builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;
                                builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.None;
                                builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None;
                                //字体大小  
                                builder.Font.Size = 10;
                                //是否加粗  
                                builder.Bold = false;
                                if ((i == 6 && j == 1) || (i == 5 && j == 1))
                                {
                                    //builder.InsertImage(@"C:\Users\GXSN\Desktop\a2dd4dcdfa08ec59a493b3c069571d4f.jpg", 10, 20);
                                    builder.InsertImage(getimage(str), 60, 40);//上面的也可以,就是可能会比较慢
                                }
                                else
                                {
                                    //向此单元格中添加内容  
                                    builder.Write(str);
                                }
                            }
                            //Table行结束  
                            builder.EndRow();
                      
                        builder.EndTable();
                        builder.InsertBreak(BreakType.LineBreak);
  public System.Drawing.Image getimage(string str)
        {
            WebRequest myrequest = WebRequest.Create(str);
            WebResponse myresponse = myrequest.GetResponse();
            Stream imgstream = myresponse.GetResponseStream();
            System.Drawing.Image img = System.Drawing.Image.FromStream(imgstream);
            try
            {

                //img.Save(Server.MapPath("test.jpg"),System.Drawing.Imaging.ImageFormat.Jpeg);
                MemoryStream ms = new MemoryStream();
                img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
                return img;
                //Response.ClearContent(); //需要输出图象信息 要修改HTTP头 
                //Response.ContentType = "image/gif";
                //Response.BinaryWrite();
            }
            catch (Exception ex)
            {
                return img;
            }
2、书签处插入

                    builder.MoveToBookmark("书签");
                    builder.Write("单元格内容");





  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值