在.NET中生成PDF文件

时间:2009-08-07 10:50:54

标签: .net pdf

我正在使用C#.NET 2.0。我想生成一个PDF文件。我应该在文件中写一个文字。

生成PDF需要哪些先决条件。

任何simplae编码样本都会对我有所帮助。

PLease建议开源库。

提前致谢。

5 个答案:

答案 0 :(得分:13)

使用PDFSharp

  

PDFsharp是一个开源库,可以从任何.NET语言轻松创建PDF文档。   相同的绘图程序可用于创建PDF文档,在屏幕上绘图或将输出发送到任何打印机。

// Create a new PDF document
PdfDocument document = new PdfDocument();

// Create an empty page
PdfPage page = document.AddPage();

// Get an XGraphics object for drawing
XGraphics gfx = XGraphics.FromPdfPage(page);

// Create a font
XFont font = new XFont("Verdana", 20, XFontStyle.Bold);

// Draw the text
gfx.DrawString("Hello, World!", font, XBrushes.Black,
  new XRect(0, 0, page.Width, page.Height),
  XStringFormat.Center);

// Save the document...
string filename = "HelloWorld.pdf";
document.Save(filename);
// ...and start a viewer.
Process.Start(filename);

Samples

答案 1 :(得分:1)

更新:SharpPDF看起来已经死了。改为使用PDFSharp ......

这个问题在SO上被问过几次:

SharpPDF - 提供教程here

答案 2 :(得分:1)

我建议 iTextSharp http://sourceforge.net/projects/itextsharp/

这是iText的一个端口:http://www.lowagie.com/iText/

答案 3 :(得分:1)

PDFSharp已移至新的site。 现在它可以与MigraDoc Foundation一起使用。

  

PDFsharp是一个开源.NET库,可以从任何> .NET语言轻松创建和处理PDF文档。相同的绘图程序可用于创建PDF文档,在屏幕上绘图或将>输出发送到任何打印机。

     

MigraDoc基础开源.NET库,可以基于具有>段落,表格,样式等的对象模型轻松创建文档,并将它们呈现为PDF,XPS或RTF。

Here是主要区别。

答案 4 :(得分:1)

PDFSharp 库真的很棒!

我已经使用了很长一段时间了,我觉得它足够灵活,可以满足你的需求。

然而,有some aspects将其用作“独立库” - 例如创建表格是一件令人头疼的事情,并且没有太多的文本格式选项。将它与MigraDoc(PDFSharp的扩展库)混合在一起要好得多。