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文档的更多相关文章

  1. Qt 生成word、pdf文档

    需求:将软件处理的结果保存为一个报告文档,文档中包含表格.图片.文字,格式为word的.doc和.pdf.生成word是为了便于用户编辑. 开发环境:qt4.8.4+vs2010 在qt的官网上对于p ...

  2. 如何从Windows Phone 生成PDF文档

    我需要从我的Windows Phone应用程序生成PDF. 遗憾的是没有标准的免费的PDF生成库在Windows Phone上运行. 我不得不自己生成PDF,通过直接写入到文件格式. 这竟然是真的很容 ...

  3. 手把手教你使用 Java 在线生成 pdf 文档

    一.介绍 在实际的业务开发的时候,研发人员往往会碰到很多这样的一些场景,需要提供相关的电子凭证信息给用户,例如网银/支付宝/微信购物支付的电子发票.订单的库存打印单.各种电子签署合同等等,以方便用户查 ...

  4. 利用Java动态生成 PDF 文档

    利用Java动态生成 PDF 文档,则需要开源的API.首先我们先想象需求,在企业应用中,客户会提出一些复杂的需求,比如会针对具体的业务,构建比较典型的具备文档性质的内容,一般会导出PDF进行存档.那 ...

  5. 使用PHP生成PDF文档

    原文:使用PHP生成PDF文档 实际工作中,我们要使用PHP动态的创建PDF文档,目前有许多开源的PHP创建PDF的类库,今天我给大家来介绍一款优秀的PDF库,它就是TCPDF,TCPDF是一个用于快 ...

  6. DocFX生成PDF文档

    使用DocFX生成PDF文档,将在线文档转换为PDF离线文档. 关于DocFX的简单介绍使用DocFX生成文档 使用docfx 命令 1.下载 https://github.com/dotnet/do ...

  7. qt 利用 HTML 生成PDF文档,不能显示jpg图片

    利用 QPrinter 和html 生成 pdf文档 其中用html语句有显示图片的语句 但只能显示png格式的图片,不能显示jpg格式图片. 经过排查:语法,文件路径等都正确,最终在stack ov ...

  8. ireport图形化界面生成pdf文档

    一.ireport软件安装 1.下载软件的官网 https://community.jaspersoft.com/project/ireport-designer/releases 2.安装软件   ...

  9. 自动把动态的jsp页面(或静态html)生成PDF文档,并且上传至服务器

    置顶2017年11月06日 14:41:04 阅读数:2311 这几天,任务中有一个难点是把一个打印页面自动给生成PDF文档,并且上传至服务器,然而公司框架只有手动上传文档,打印时可以保存为PDF在本 ...

随机推荐

  1. iOS如何统计渠道

    http://bbs.umeng.com/thread-10-1-1.html https://www.zhihu.com/question/20697933

  2. ios理解 -- Pro Mutlithreading and Memory Management for iOS and OS X with ARC, Grand Central Dispatch, and Blocks

    Capturing automatic variables Next, you need to learn what the “together with automatic (local) vari ...

  3. ios判断点击的坐标点

    -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { NSSet *allTouches = [event allTouc ...

  4. WPF 面试题及答案(三)

    一 · 路由事件的三种方式/策略(冒泡 直接 隧道) WPF中的路由事件是沿着VisualTree传递的,作用是用来调用应用程序的元素树上的各种监听器上的处理程序. (1)冒泡,这种事件处理方式是从源 ...

  5. Java基础之一组有用的类——使用比较器对数组排序(TrySortingWithComparator)

    控制台程序. Arrays类中的sort()静态方法把传送为参数的数组元素按升序方式排序. 对于第一个参数类型是Object[]的sort()方法来说,可以传送任意类型的数组.如果使用sort()方法 ...

  6. Swift实战-豆瓣电台(九)简单手势控制暂停播放(全文完)

    Swift实战-豆瓣电台(九)简单手势控制暂停播放 全屏清晰观看地址:http://www.tudou.com/programs/view/tANnovvxR8U/ 这节我们主要讲UITapGestu ...

  7. 配置hibernate根据实体类自动建表功能(转载)

    hibernate支持自动建表,在开发阶段很方便,可以保证hbm与数据库表结构的自动同步. 如何使用呢?很简单,只要在hibernate.cfg.xml里加上如下代码 Xml代码<propert ...

  8. 树形DP+贪心(乱搞)(HDU4714)

    题意:给出一个树形图,要求把该树形成一个环最少的步骤(断开一条边和形成一条边都需一步) 分析:很明显,要想把树形成一个环,就要先把其分裂成m条子链之后把子链形成环需要的步骤是2*m+1,所以只需要m最 ...

  9. nyist 673 悟空的难题

    http://acm.nyist.net/JudgeOnline/problem.php?pid=673 悟空的难题 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述 ...

  10. [转] JVM 调优系列 & 高并发Java系列

    1.JVM调优总结(1):一些概念:http://www.importnew.com/18694.html 2.JVM调优总结(2):基本垃圾回收算法:http://www.importnew.com ...