English 中文(简体)
你可以自由行事。 将DocX改为PDF的净管理代码?
原标题:Do you have any free .Net managed code for converting DocX to PDF?
  • 时间:2009-08-31 09:49:04
  •  标签:

在我的网络项目中,我使用DocX文档类型,以包含报告模板。 我需要将DocX档案类型转换为PDF。 你们有没有。 这样做的净管理代码?

我知道解决这一问题的若干办法。 但是,它没有像以下项目那样管理规范和自由。

<>Thanks,

最佳回答

我没有将DocX转换为PDF的法典,但似乎你对DocX的要求并不明确。 您的最后一点是:

Or create template document with other file format that can export it to DocX and PDF file format. Moreover, end-users should easily edit this file. If you know, please tell me.

我读到这指的是,你希望能够制作一份模板文件,填充数据,把数据输入PDF,但使模板能够保持正确吗?

<>Solution:XSL-FO

XSL-FO是一种W3C标准,如超文本,可以通过一些公开来源和商业产品转变为PDF、Wormon、XPS、PS、PCL、SVG、TIFF等。 我利用这一机会每月提供数以百计的文件,既作为“PDF”在线文件,又作为脱线文件(如批量打印)。

下面是。 W3C page for XML-FO。 那里有许多很好的信息,包括一个排在左边的软件清单(开放源和通勤)。 我个人使用了两个商业产品,即:,IBEX PDF成物/a>和。 这两种产品都是优良的产品,有100%管理的C# 实施方案,以获得PDF的“FO.NET。 我没有尝试过,但应该符合你的“免费”标准。

您可以采用多种方法编辑拟在XSL-FO创建的文件模板。 通常,这一模板是XSLT,适用于你的XML数据,但这不是一项要求。 我亲手建造了这些设备,但这是一个学习曲线的范畴。 你可以先用XSL-FO文件,然后用密码填写其中的章节,就像你可以超文本一样。 良好消息是:http://www.stylusstudio.com/xsl_fo_process.html” rel=“noreferer”>there commercial &free

问题回答

2007年安装办公室,使用“语言12”目标图书馆,这无疑是选择I d的(而且已经在我自己的一些项目中这样做)。

如果你不想安装, 关于生产网络服务器,为什么没有二级服务器。 您可以获取第二台服务器,与第一台服务器(使用网络服务或类似服务)进行沟通。 需要出口的文字文件、转换文件,然后归还PDF数据。

让我知道,你是否想到“语言”自动化的C#范例,而这种转变是做的。

Adrian


我的守则已刊登在Jason。 这本书于2007年完成。 你们需要从办公室网站下载和安装PDF出口商:

using Microsoft.Office.Interop.Word;

...

object _read_only = false;
object _visible = true;
object _false = false;
object _true = true;
object _dynamic = 2;
object  _missing = System.Reflection.Missing.Value;

object _htmlFormat = 8;        
object _pdfFormat = 17;
object _xpsFormat = 18;

object fileName = "C:\Test.docx";

ApplicationClass ac = new ApplicationClass();
//ac.Visible = true; // Uncomment to see Word as it opens and converts the document
//ac.Activate();

Document d = ac.Documents.Open(ref fileName, ref _missing, ref _true, ref _read_only, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _visible, ref _missing, ref _missing, ref _missing, ref _missing);

object newFileName = ((string)fileName).Substring(0, ((string)fileName).LastIndexOf(".")) + ".pdf";

d.SaveAs(ref newFileName, ref _pdfFormat, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing, ref _missing);

d.Close(ref _false, ref _missing, ref _missing);
ac.Quit(ref _false, ref _missing, ref _missing);

ac = null;

因此,Soul_ 总而言之,你所说的话是,你不想使用间隙(尽管你不说为什么我很想知道),你不想为商业出口商付费,你想要取得完美的成果?

我不敢帮助你。 Interop将给你带来完美的结果,而且你已经拥有软件。 如果你不使用,你将不得不作出牺牲——无论是代价还是质量。

开放办公室是否有一份意向书? 这至少是一个自由的选择?

利用《积极报告》/《定期报告》等报告工具创建国防军(比使用iTextSharp更容易)





相关问题
热门标签