Aspose.Words 开发时遇到的问题
问题一
Document doc.Save(Response, "学员报名表.pdf", ContentDisposition.Inline, null); 执行后没有效果,因为异步的时候需要加,如果不是异步,即没有使用UpdatePanel,那么就不要加此方法Triggers。
解决
<asp:UpdatePanel ID="UpdatePanel1" runat="server"><Triggers><asp:PostBackTrigger ControlID="btnExportAndPrint" /></Triggers><ContentTemplate><asp:Button runat="server" ID="btnExportAndPrint" class="btn btn-primary" Text="打印报名表" OnClick="btnExportAndPrint_Click"/></ContentTemplate> </asp:UpdatePanel>
我的程序
protected void btnExportAndPrint_Click(object sender, EventArgs e){string studentNo = txtStudentCode.Text;if (!string.IsNullOrWhiteSpace(studentNo)){OLD_StudentUser student = OLD_StudentUserDAL.GetByStudentNo(studentNo);string templateFile = Server.MapPath("../Template/Word/学员报名表.doc");//string photoPath = Server.MapPath("../IDCardPhoto/142201199201264557.Bmp"); //测试方法string photoPath = Server.MapPath(student.ZP); Document doc = new Document(templateFile);doc = ExportAndPrintHelper.ExportAndPrintRegister(doc,student,studentNo,photoPath);if (doc != null){doc.Save(Response, "学员报名表.pdf", ContentDisposition.Inline, null);}}else{Response.Write("<script>alert('学员学号为空!')</script>");}}
public class ExportAndPrintHelper{/// <summary>/// 导出和打印学员报名表/// </summary>/// <param name="doc"></param>/// <param name="student"></param>/// <param name="StudentNo"></param>/// <param name="photoPath"></param>/// <returns></returns>public static Document ExportAndPrintRegister(Document doc, OLD_StudentUser student, string studentNo, string photoPath){DocumentBuilder builder = new DocumentBuilder(doc);if (!string.IsNullOrWhiteSpace(studentNo)){#region 基础信息if (doc.Range.Bookmarks["Code"] != null){doc.Range.Bookmarks["Code"].Text = DateTime.Now.ToShortDateString();}if (doc.Range.Bookmarks["Name"] != null){doc.Range.Bookmarks["Name"].Text = student.Name;}if (doc.Range.Bookmarks["Sex"] != null){doc.Range.Bookmarks["Sex"].Text = student.Sex;}if (doc.Range.Bookmarks["Born"] != null){doc.Range.Bookmarks["Born"].Text = student.DirthDate.ToString("yyyy.MM.dd");}if (doc.Range.Bookmarks["StudentNo"] != null){doc.Range.Bookmarks["StudentNo"].Text = student.StudentsNo;}if (doc.Range.Bookmarks["Politics"] != null){doc.Range.Bookmarks["Politics"].Text = student.Politics;}if (doc.Range.Bookmarks["IDCardNo"] != null){doc.Range.Bookmarks["IDCardNo"].Text = student.SID;}if (doc.Range.Bookmarks["EducationLevel"] != null){doc.Range.Bookmarks["EducationLevel"].Text = student.EducationLevel;}if (doc.Range.Bookmarks["Units"] != null){doc.Range.Bookmarks["Units"].Text = student.Units;}if (doc.Range.Bookmarks["Job"] != null){doc.Range.Bookmarks["Job"].Text = student.Job;}if (doc.Range.Bookmarks["Phone"] != null){doc.Range.Bookmarks["Phone"].Text = student.Phone;}if (doc.Range.Bookmarks["RelativesPhone"] != null){doc.Range.Bookmarks["RelativesPhone"].Text = student.RelativesPhone;}if (doc.Range.Bookmarks["ResidenceAdd"] != null){doc.Range.Bookmarks["ResidenceAdd"].Text = student.ResidenceAdd;}if (doc.Range.Bookmarks["Address"] != null){doc.Range.Bookmarks["Address"].Text = student.Address;}if (doc.Range.Bookmarks["NowTime"] != null){doc.Range.Bookmarks["NowTime"].Text = DateTime.Now.ToShortDateString();}if (doc.Range.Bookmarks["Photo"] != null){builder.MoveToBookmark("Photo");var img = builder.InsertImage(photoPath);img.Width = 76;img.Height = 94;}#endregion#region 所报课程List<OLD_CourseRegistration> courses = OLD_CourseRegistrationDAL.GetByStudentNo(studentNo);for (int i = 9; i < courses.Count + 9; i++){OLD_Class classes = OLD_ClassDAL.GetByClassName(courses[i - 9].ClassName);builder.MoveToCell(0, i, 2, 0);builder.Write(courses[i - 9].ClassName.ToString());builder.MoveToCell(0, i, 3, 0);builder.Write(classes.TeacherName.ToString());builder.MoveToCell(0, i, 4, 0);builder.Write(classes.SKdate.ToString());builder.MoveToCell(0, i, 5, 0);builder.Write(classes.ClassAdd.ToString());builder.MoveToCell(0, i, 6, 0);builder.Write(classes.FY.ToString());}for (int cancel = 22; cancel >= courses.Count + 9; cancel--){builder.DeleteRow(0, cancel);}#endregionreturn doc;}else{return null;}}}
View Code
word图片
执行保存之后的图片
转载于:https://www.cnblogs.com/BrokenIce/p/5988347.html
Aspose.Words 开发时遇到的问题相关推荐
- Aspose.Words 开发资料整理
1.总体说明:操作主要涉及两个对象Document及DocumentBuilder Document主要用来获取文档中的节点,DocumentBuilder主要用于实现文档内容的写入 doc_Oper ...
- grunt-connect-proxy解决开发时跨域问题
最近的项目中前后端是完全分离开发的,前端用grunt管理项目.这样就会导致一个问题:开发时前端调用后台的接口时因为不在一个服务器,所以会出现跨域问题.但是也不能用JSONP或CROS方式实现真正的跨域 ...
- php接口 汉字出错 空,php接口开发时,数据解析失败问题,字符转义,编码问题(示例代码)...
php接口开发时,数据解析失败问题,字符转义,编码问题 情景: A平台--->向接口请求数据---->接口向B平台请求数据---->B平台返回数据给接口---->接口返回数据给 ...
- 三大框架开发时,spring配置文件出现异常
在最近利用三大框架进行项目开发时,spring配置文件里出现了一个橘***的双向箭头,鼠标放上去,会提示你advised by org.springframework.transaction.int ...
- MyEclipse-Web开发时何时重启tomcat、重新部署
MyEclipse-Web开发时何时重启tomcat.重新部署 结论虽然不全,但知道的还是较早的,不过知道昨天晚上忽然又闪一下(鬼知道为啥),所以决定写到博客里.相当年,很痛苦,傻乎乎的每次都重新启动 ...
- java伪装成mysql从节点_开发时java项目启动时需要连mysql等,有没有什么工具可以mock连接使得启动顺利不报错?...
如果是非单元测试 mock 一个数据库连接不难,实际上只要 mock 一个 DataSource 对象,然后根据项目实际初始化方式放进去就可以了,而这个对象实际连接到本地的任意数据库即可.下面的例子使 ...
- MongoDB:mongodb在项目开发时的安全验证、分页查询操作
MongoDB:mongodb在项目开发时的安全验证.分页查询操作. 对于数据库而言,在项目应用中都需要安全验证,不然,就会报错,呵呵-- 现在贴出来我在项目中是怎么做的. 原创文章,转载请注明出处: ...
- android 开发时遇到的各种问题1--Android双模(CDMA/GSM)手机短信相关
这篇博客主要是用来记录平时开发时遇到的各种问题,给大家一个参考,也可以跟大家一起讨论讨论. Android双模(CDMA/GSM)手机短信相关 参考博客http://blog.sina.com.cn/ ...
- 使用java做paypal开发时购买东西支付不成功的原因
使用java做paypal开发时购买东西支付不成功的原因 没有设置网站习惯设定,登陆自己的paypal账户,在网站习惯设定上填写回调的url路径,这样就可以 支付成功了并且异步修改订单的状态. 支付成 ...
最新文章
- 别在 Java 代码里乱打日志了,这才是打印日志的正确姿势!
- 02-VTK编译安装
- 「思想钢印」成真!33位中美科学家最新成果:用光成功改变大脑认知
- UNITY 的GC ALLOC到底是什么
- php 监听端口数据客户端ip_PHP做端口监听示例代码
- C#日期格式化,时间
- lua执行shell命令6_Vim执行shell命令及使用Vim批量更改文件名
- esp32 例程 蓝牙_wifiamp;蓝牙MCU 该不该选ESP32
- android主题与风格入门
- 01. 慎重选择容器类型
- 计算机的原理 组成 分类及应用,计算机组成原理试卷A卷及答案
- zabbix 3.0.7 for Centos 7.2 安装
- 常见坐标系经纬度转换
- magedu第一天学习(计算机基础部分)
- Android直播开发之旅(15):libjpeg库的编译移植与使用
- 销售即是一门艺术,更是一门科学?(一)
- FFmpeg —— 录制Windows桌面与麦克风,音视频同步(附源码)
- 史上最强的美名腾智能起名成功发布
- ecmall mysql.php_ecmall框架核心ecmall.php文件详解
- 计算机启动盘安装教程,u启动u盘启动盘制作工具制作u盘启动盘及u盘装系统教程...