Aspose.Words操作word生成PDF文档
Aspose.Words操作word生成PDF文档
using Aspose.Words;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace TempAspose.Words.Function
{
public class WordToPdf
{
private string _TempPath; //模版路径 private Aspose.Words.Document doc = null; public WordToPdf(string TempPath)
{
this._TempPath = TempPath;
doc = new Aspose.Words.Document(TempPath); //new一个对象
} /// <summary>
/// 在书签处插入值
/// </summary>
/// <param name="key"></param>
/// <param name="value"></param>
/// <returns></returns>
public bool InsertValue(string key, string value)
{
Bookmark bookmark=doc.Range.Bookmarks[key];
//判断是否存在此标签
if (bookmark != null)
{
bookmark.Text = value;
return true;
}
else {
return false;
}
} /// <summary>
/// 在书签处插入图片
/// </summary>
/// <param name="key">书签</param>
/// <param name="img">图片</param>
/// <param name="width">宽</param>
/// <param name="height">高</param>
/// <returns></returns>
public bool InsertImage(string key, string img,double width,double height)
{
DocumentBuilder dBuilder = new DocumentBuilder(doc);
bool pic = dBuilder.MoveToBookmark(key);
//判断书签是否存在
if (pic)
{
dBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Center;
dBuilder.InsertImage(img, width, height);
return true;
}
else {
return false;
}
} #region 插入表格,未测试
public bool InsertDataSet()
{
try
{
System.Data.DataSet dataSet = new System.Data.DataSet();
doc.MailMerge.ExecuteWithRegions(dataSet);
return true;
}
catch (Exception ex)
{
return false;
}
}
public bool InsertTable(string key,System.Data.DataTable dt)
{
try
{
DocumentBuilder dBuilder = new DocumentBuilder(doc);
bool table = dBuilder.MoveToBookmark(key);
dBuilder.StartTable();//开始画Table
dBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Center;
//添加Word表格
dBuilder.InsertCell();
dBuilder.CellFormat.Width = 600.0;
dBuilder.CellFormat.PreferredWidth = Aspose.Words.Tables.PreferredWidth.FromPoints();
dBuilder.CellFormat.Borders.LineStyle = LineStyle.None; dBuilder.StartTable();//开始画Table
dBuilder.RowFormat.Height = 20.2;
dBuilder.InsertCell();
dBuilder.CellFormat.Borders.LineStyle = LineStyle.Single;
dBuilder.Font.Size = 10.5;
dBuilder.Bold = false;
dBuilder.Write("评卷人"); dBuilder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
dBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Center;
dBuilder.CellFormat.Width = 50.0;
dBuilder.CellFormat.PreferredWidth = Aspose.Words.Tables.PreferredWidth.FromPoints();
dBuilder.RowFormat.Height = 20.0;
dBuilder.InsertCell();
dBuilder.CellFormat.Borders.LineStyle = LineStyle.Single;
dBuilder.Font.Size = 10.5;
dBuilder.Bold = false;
dBuilder.Write("得分");
dBuilder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
dBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Center;
dBuilder.CellFormat.Width = 50.0;
dBuilder.CellFormat.PreferredWidth = Aspose.Words.Tables.PreferredWidth.FromPoints();
dBuilder.EndRow();
dBuilder.RowFormat.Height = 25.0;
dBuilder.InsertCell();
dBuilder.RowFormat.Height = 25.0;
dBuilder.InsertCell();
dBuilder.EndRow();
dBuilder.EndTable(); dBuilder.InsertCell();
dBuilder.CellFormat.Width = 300.0;
dBuilder.CellFormat.PreferredWidth = Aspose.Words.Tables.PreferredWidth.Auto;
dBuilder.CellFormat.Borders.LineStyle = LineStyle.None; //dBuilder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐
//dBuilder.ParagraphFormat.Alignment = ParagraphAlignment.Left;
//dBuilder.Font.Size = 11;
//dBuilder.Bold = true;
//dBuilder.Write(handText);
//dBuilder.EndRow();
//dBuilder.RowFormat.Height = 28;
dBuilder.EndTable();
return true;
}
catch (Exception ex)
{
return false;
}
}
#endregion /// <summary>
/// 保存文件
/// </summary>
/// <param name="path">文件路径</param>
/// <param name="foemat">文件格式,枚举</param>
/// <returns></returns>
public bool SaveFile(string path, SaveFormat foemat)
{
try
{
doc.Save(path, foemat);
return true;
}
catch (Exception ex)
{
return false;
}
}
}
}
Aspose.Words操作word生成PDF文档
Aspose.Words操作word生成PDF文档的更多相关文章
- Qt 生成word、pdf文档
需求:将软件处理的结果保存为一个报告文档,文档中包含表格.图片.文字,格式为word的.doc和.pdf.生成word是为了便于用户编辑. 开发环境:qt4.8.4+vs2010 在qt的官网上对于p ...
- 如何从Windows Phone 生成PDF文档
我需要从我的Windows Phone应用程序生成PDF. 遗憾的是没有标准的免费的PDF生成库在Windows Phone上运行. 我不得不自己生成PDF,通过直接写入到文件格式. 这竟然是真的很容 ...
- 手把手教你使用 Java 在线生成 pdf 文档
一.介绍 在实际的业务开发的时候,研发人员往往会碰到很多这样的一些场景,需要提供相关的电子凭证信息给用户,例如网银/支付宝/微信购物支付的电子发票.订单的库存打印单.各种电子签署合同等等,以方便用户查 ...
- 利用Java动态生成 PDF 文档
利用Java动态生成 PDF 文档,则需要开源的API.首先我们先想象需求,在企业应用中,客户会提出一些复杂的需求,比如会针对具体的业务,构建比较典型的具备文档性质的内容,一般会导出PDF进行存档.那 ...
- 使用PHP生成PDF文档
原文:使用PHP生成PDF文档 实际工作中,我们要使用PHP动态的创建PDF文档,目前有许多开源的PHP创建PDF的类库,今天我给大家来介绍一款优秀的PDF库,它就是TCPDF,TCPDF是一个用于快 ...
- DocFX生成PDF文档
使用DocFX生成PDF文档,将在线文档转换为PDF离线文档. 关于DocFX的简单介绍使用DocFX生成文档 使用docfx 命令 1.下载 https://github.com/dotnet/do ...
- qt 利用 HTML 生成PDF文档,不能显示jpg图片
利用 QPrinter 和html 生成 pdf文档 其中用html语句有显示图片的语句 但只能显示png格式的图片,不能显示jpg格式图片. 经过排查:语法,文件路径等都正确,最终在stack ov ...
- ireport图形化界面生成pdf文档
一.ireport软件安装 1.下载软件的官网 https://community.jaspersoft.com/project/ireport-designer/releases 2.安装软件 ...
- 自动把动态的jsp页面(或静态html)生成PDF文档,并且上传至服务器
置顶2017年11月06日 14:41:04 阅读数:2311 这几天,任务中有一个难点是把一个打印页面自动给生成PDF文档,并且上传至服务器,然而公司框架只有手动上传文档,打印时可以保存为PDF在本 ...
随机推荐
- 几个系统调用分析 glibc中的malloc调用和共享内存原理
本文主要分析内存以及I/O相关的系统调用和库函数的实现原理,根据原理给出在使用过程中需要注意的问题和优化的侧重点,本文涉及到的系统调用包括readahead,pread/pwrite,read/wri ...
- echarts html传参+js请求+ashx服务 代码方式
html 头传参方式 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <hea ...
- WHERE谓词对索引使用的影响
本篇博文只测试WHERE谓词对multi-column index使用的影响,主要篇幅是SQL代码+截图.详细内容请参考<Inside the SQL Server Query Optimize ...
- JS函数创建的具体过程
JS函数创建的过程: 1.新建Object对象F,类型设置为Function 2.设置F.__proto__ = Function.prototype 3.设置F.constructor = Func ...
- PLSQL 的简单命令之五
--1. 查询和Zlotkey相同部门的员工姓名和雇用日期 select a.last_name,a.hire_date ,b.department_name from employees a,dep ...
- 用get方式提交请求的url带有中文参数
又碰到JSP页面中文乱码问题,经过一次encodeURI处理后仍旧是乱码,后来经过两次encodeURI后正常显示中文 以前也碰到过同样的问题,没深究,这次网上搜集了一些资料,记录下来留做备份 ___ ...
- C# 以管理员方式启动Winform,进而使用管理员控制Windows Service
问题起因: 1,) 问题自动分析Windows服务在正常运行时,确实会存在程序及人为原因导致该服务停止.为了在应用程序使用时确保该服务正常运行,于是有了该讨论主题. 2,)一般账户(尽管是管理员组账户 ...
- 别人写的一个Bootstrap系列教程
http://www.cnblogs.com/lansy/category/659061.html
- 强连通+二分匹配(hdu4685 Prince and Princess)
Prince and Princess Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Othe ...
- android ANR问题
一.什么是ANR ANR:Application Not Responding: 具体请参考:http://blog.csdn.net/dadoneo/article/details/8270107