开发工具:vs2019
语言:C#
数据库:Oracle

一、利用NuGet程序包安装Aspose.Words;
二、新建Word文档,使用插入书签功能

三、代码

private void CreatePdfReport_PACS(string _accno)
{DataSet ds = new System.Data.DataSet();DataTable dt = new System.Data.DataTable();OracleDataAdapter dr = new Oracle.DataAccess.Client.OracleDataAdapter();string cmdText, IDCardNo, msg;OracleCommand Cmd_Procedure = new OracleCommand();string  filePath, TemplatePath, TemplateFile, folderPath;cmdText = "";msg = "";string OpTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");try{Conn = new OracleConnection(ConnectionStr);IDCardNo = _accno;OracleCommand cmd = new OracleCommand();cmd.Connection = Conn;ConnOpen();//获取报告列表cmdText = "Select * from  view_getpatientinfo where accno='" + IDCardNo + "'";cmd.CommandText = cmdText;dt.Clear();dr.SelectCommand = new Oracle.DataAccess.Client.OracleCommand(cmd.CommandText, Conn);dr.Fill(ds, "5");dt = ds.Tables["5"];if (dt.Rows.Count == 0){msg = "没有查询到标本号(" + IDCardNo + ")的检查报告,检查报告未完成。";return;}//判断文件夹是否存在, 不存在创建文件夹folderPath = PdfPath + "PACS\\" + DateTime.Now.Year.ToString() + "\\" + DateTime.Now.Month.ToString() + "\\" + DateTime.Now.Day.ToString();//创建文档对象if (!Directory.Exists(folderPath))//判断是否存在{Directory.CreateDirectory(folderPath);//创建新路径}filePath = folderPath + "\\" + IDCardNo + ".pdf";TemplatePath = AppDomain.CurrentDomain.BaseDirectory + "Template\\";TemplateFile = TemplatePath + "CR检查报告单.docx";wordToPDF wtp = new wordToPDF();Aspose.Words.Document doc= wtp.WordToPdf(TemplateFile);wtp.InsertValue("jcrq", dt.Rows[0]["check_date"].ToString());wtp.InsertValue("jcbh", dt.Rows[0]["accno"].ToString());wtp.InsertValue("H1", dt.Rows[0]["h1"].ToString());wtp.InsertValue("H2", dt.Rows[0]["h2"].ToString());wtp.InsertValue("H3", dt.Rows[0]["h3"].ToString());wtp.InsertValue("jcsj", dt.Rows[0]["DESCRIPTION"].ToString());wtp.InsertValue("jcts", dt.Rows[0]["IMPRESSION"].ToString());              wtp.InsertValue("H4", dt.Rows[0]["h4"].ToString());//wtp.InsertValue("bgr", dt.Rows[0]["REPORTDOC"].ToString());//wtp.InsertValue("shr", dt.Rows[0]["COMDOC"].ToString());wtp.SaveFile(filePath, Aspose.Words.SaveFormat.Pdf);String strsql;Cmd_Procedure.Connection = Conn;Cmd_Procedure.CommandType = CommandType.StoredProcedure;Trans = Conn.BeginTransaction();strsql = "zl_报告生成记录_Insert";Cmd_Procedure.CommandText = strsql;Cmd_Procedure.Parameters.Clear();OracleParameter P2_1 = new OracleParameter("报告ID_In", OracleDbType.Varchar2, ParameterDirection.Input);OracleParameter P2_2 = new OracleParameter("检查时间_In", OracleDbType.Date, ParameterDirection.Input);OracleParameter P2_3 = new OracleParameter("审核时间_In", OracleDbType.Date, ParameterDirection.Input);OracleParameter P2_4 = new OracleParameter("姓名_In", OracleDbType.Varchar2, ParameterDirection.Input);OracleParameter P2_5 = new OracleParameter("检查号_In", OracleDbType.Varchar2, ParameterDirection.Input);OracleParameter P2_6 = new OracleParameter("报告地址_In", OracleDbType.Varchar2, ParameterDirection.Input);OracleParameter P2_7 = new OracleParameter("报告类型_In", OracleDbType.Varchar2, ParameterDirection.Input);P2_1.Value = dt.Rows[0]["ReportKey"].ToString();P2_2.Value = Convert.ToDateTime(dt.Rows[0]["CHECK_DATE"].ToString());P2_3.Value = Convert.ToDateTime(dt.Rows[0]["AUDIT_time"].ToString());P2_4.Value = dt.Rows[0]["NAME"].ToString();P2_5.Value = dt.Rows[0]["ACCNO"].ToString();P2_6.Value = PdfPathHttp + "PACS\\" + DateTime.Now.Year.ToString() + "\\" + DateTime.Now.Month.ToString() + "\\" + DateTime.Now.Day.ToString() + "\\" + IDCardNo + ".pdf";P2_7.Value = "2";Cmd_Procedure.Parameters.Add(P2_1);Cmd_Procedure.Parameters.Add(P2_2);Cmd_Procedure.Parameters.Add(P2_3);Cmd_Procedure.Parameters.Add(P2_4);Cmd_Procedure.Parameters.Add(P2_5);Cmd_Procedure.Parameters.Add(P2_6);Cmd_Procedure.Parameters.Add(P2_7);Cmd_Procedure.ExecuteNonQuery();Trans.Commit();tb_output.AppendText(OpTime + ":" + "检查号:" + _accno + "生成检查报告成功:" + filePath + "\r\n");msg = "success";//清理资源cmd.Parameters.Clear();cmd.Dispose();cmd = null;}catch (Exception ex){//写日志                msg = ex.Message.ToString();tb_output.AppendText(OpTime + ":" + msg + "\r\n");}}```

利用Aspose.Words编辑word生成pdf相关推荐

  1. 利用velocity模板以及itext生成pdf

    利用velocity模板以及itext生成pdf 我整理的源码:http://download.csdn.net/download/u012174571/8748897 首先是velocity的使用: ...

  2. Aspose.Java实现word转pdf,添加水印等操作

    Aspose.Java实现word转pdf,添加水印等操作 一. word转pdf 二. 文档插入水印 Aspose是一款商用版控件,支持各类文档操作,这里主要介绍如何在Springboot项目中使用 ...

  3. 使用Aspose组件将WORD、PDF、PPT转为图片

    using System; using System.Collections.Generic; using System.Text; using OMCS.Engine.WhiteBoard; usi ...

  4. aspose win/linux WORD转PDF(及其解决乱码方式)

    aspose win/linux WORD转PDF(及其解决乱码方式) 1.工具类 2.控制台 3.解决乱码 4.JAR包 之前自己用的docm4j 本地进行转换是ok 在服务器中就异常了: 后来在网 ...

  5. word生成pdf保留书签设置

    word生成pdf保留书签设置 点击"另存为"选项: 在另存为界面选择保存为pdf,如下,会出现"选项"设置项,点击进入: 在选项中,设置需要的设置,若要将pd ...

  6. web在线编辑word,excel,pdf插件-----WebOffice 文档控件API

    目    录 一.工作原理...5 1.1         开发流程...5 1.2         WEB页面调用控件:.6 二.接口说明...7 2.1         接口...7 2.1.1  ...

  7. JAVA 使用 com.aspose.words将word转换PDF等

    因为公司前端需要在线查看word和PDF,后台上传需求将word等文件转换为PDF,原本使用的是liboffice进行转换,后来部署到服务器端之后,发现并不是很适合,由此找到com.aspose.wo ...

  8. java Aspose.Words实现Word生成表格并下载至本地

    一.Maven加入Aspose.Words依赖 <dependency><groupId>com.aspose</groupId><artifactId> ...

  9. 记录一下LibreOffice word生成pdf由于特殊字符报错的问题

    业务大致是,输入表单然后生成word和pdf word没有问题,pdf由于有特殊字符&所以导致生成失败. word本身就是xml所以报错的根本原因是xml不能直接使用 &.<.& ...

最新文章

  1. Python 骚操作:微信远程控制电脑
  2. 调查:台湾上班族讨厌5种年会状况 最怕老板致词长
  3. ICCV 2019 开源论文 | ShapeMatchingGAN:打造炫酷动态的艺术字
  4. java安卓的xml布局,android – 将xml布局更改为java代码
  5. 自动打包_全自动打包机行业发展如何?全自动打包机行业发展现状分析
  6. python中的tail()_让VASP实现固定应力张量计算的python脚本
  7. vi 方向键 ABC
  8. iptables 性能 测试
  9. 华为路由器配置备忘录
  10. List<String> 查找重复记录
  11. php begintransaction,PDO::beginTransaction用法详解
  12. 使用docx4j追尾合并多个docx文件为一个docx文件
  13. 周一清晨的管理课-全球第一畅销领导力培训手册
  14. C++ Report:应用设计模式去简化信号控制
  15. 导航上显示某个地点已关闭什么意思_想要玩好iPhone手机,6个关闭、4个开启,要牢记...
  16. 只要5分钟!学会自己打造多系统合集的DVD安装光盘
  17. Java使用Netty实现Modbus-RTU通信协议
  18. 月嫂类地域性网站SEO挣钱案例
  19. ubuntu挂载硬盘是什么意思
  20. 单独给axios设置请求头

热门文章

  1. 最简单的神经网络结构图,神经网络的神经元结构
  2. VB.NET之旅--命名空间
  3. 多级缓存架构体系介绍
  4. 今日科技联播:阿里倡导成立“罗汉堂” 6名诺贝尔奖得主加入
  5. 达梦数据库DM8之导入导出参数详解
  6. 硬件环境对系统性能的影响
  7. 生活随笔:工作的开心和不开心
  8. Babylon.js实战WebXR/元宇宙
  9. 泡泡堂段王一进去服务器不稳定,3月22日泡泡新段王 《泡泡堂》段位系统大革新...
  10. 董明珠又放大招!联手上市公司搞芯片,先后已砸50亿!