| | |
| | | |
| | | } |
| | | |
| | | |
| | | public void GenerateInfos(System.Data.DataTable dt, string bookMark, ref WordHelper wordHelper) |
| | | { |
| | | |
| | | string[] Titles = new string[dt.Columns.Count]; |
| | | |
| | | string strInfos = ""; |
| | | for (int i = 0; i < dt.Rows.Count; i++) |
| | | { |
| | | for (int j = 0; j < dt.Columns.Count; j++) |
| | | { |
| | | if ((j == 2) && dt.Rows[i][j].ToString() != "") //插入图片 |
| | | { |
| | | strInfos += Titles[j] + ":\r\n"; |
| | | string[] strImgs = dt.Rows[i][j].ToString().Split(new char[] { ',' }); |
| | | for (int m = 0; m < strImgs.Length; m++) |
| | | { |
| | | strInfos += "bookMark" + i + j + m; |
| | | } |
| | | strInfos += "\r\n"; |
| | | } |
| | | else |
| | | { |
| | | strInfos += Titles[j] == "" ? dt.Rows[i][j].ToString() + "\r\n" : Titles[j] + ":\r\n" + dt.Rows[i][j].ToString() + "\r\n"; |
| | | } |
| | | } |
| | | strInfos += "\r\n"; |
| | | } |
| | | wordHelper.InsertText(bookMark, strInfos); |
| | | |
| | | //插入图片 |
| | | int iNo = 1; |
| | | for (int i = 0; i < dt.Rows.Count; i++) |
| | | { |
| | | for (int j = 0; j < dt.Columns.Count; j++) |
| | | { |
| | | if ((j == 2) && dt.Rows[i][j].ToString() != "") //插入图片 |
| | | { |
| | | string[] strImgs = dt.Rows[i][j].ToString().Split(new char[] { ',' }); |
| | | for (int m = 0; m < strImgs.Length; m++) |
| | | { |
| | | if (!System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath(strImgs[m]))) continue; |
| | | BookMark bookmarkItem = new BookMark(); |
| | | bookmarkItem.Name = "bookMark" + i + j + m; |
| | | Range range = FindFirst(wordDoc.Range(), bookmarkItem.Name); |
| | | bookmarkItem.Range = range; |
| | | wordHelper.InsertBookMark(bookmarkItem); |
| | | wordHelper.InsertPicture(range, HttpContext.Current.Server.MapPath(strImgs[m]), 260, 195, iNo++); |
| | | Range rangeTmp = FindFirst(wordDoc.Range(), bookmarkItem.Name); |
| | | if (rangeTmp != null) |
| | | { |
| | | rangeTmp.Select(); |
| | | wordApp.Selection.Delete(); |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | public Range FindFirst(Range range, string findText) |
| | | { |
| | | int start = range.Start; |