如何在C#.Net中创建PDF文件

如何在C#.Net中创建PDF文件,c#,C#,我想用c#创建pdf文件。Pdf文件包含文本文件和图像。我想在运行时整理文本文件和图像,整理后我想将其另存为.pdf文件。请帮帮我 提前感谢。您应该尝试: 我网有很多例子,如何将其用于您描述的目的。您可以使用。还有一些其他的图书馆 要创建PDF,我使用“iText”库,它是开放的,非常容易使用。 您可以先下载iText。获取,然后尝试使用此代码 using System.Runtime.InteropServices; [DllImport("shell32.dll")] public stat

我想用c#创建pdf文件。Pdf文件包含文本文件和图像。我想在运行时整理文本文件和图像,整理后我想将其另存为.pdf文件。请帮帮我

提前感谢。

您应该尝试:


我网有很多例子,如何将其用于您描述的目的。

您可以使用。还有一些其他的图书馆

要创建PDF,我使用“iText”库,它是开放的,非常容易使用。 您可以先下载iText。

获取,然后尝试使用此代码

using System.Runtime.InteropServices;
[DllImport("shell32.dll")]
public static extern int ShellExecute(int hWnd,
string lpszOp, string lpszFile, string lpszParams, string lpszDir,int FsShowCmd);
ShellExecute(0, "OPEN", args[0] + ".pdf", null, null, 0);
或者也可以使用这个或这个

我投票支持iText:)一开始就非常简单和舒适:

    string pdfFilename = @"c:\temp\test.pdf";
    string imageFilename = @"C:\map.jpg";

    // Create PDF writer, document and image to put
    iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(imageFilename);
    Document doc = new Document();
    PdfWriter pdfW = PdfWriter.GetInstance(doc, new FileStream(pdfFilename, FileMode.Create));

    // Open created PDF and insert image to it
    doc.Open();
    doc.Add(image);
    doc.Close();
试试这个

您需要下载wnvhtmlconvert.dll 要使用pdfconverter类

--html端

  <table id="tbl" runat="server"  style="width: 940px;" cellpadding="0" cellspacing="0" border="0">
                <tr id="tr" runat="server">
                    <td id="td" runat="server" align="center" valign="top"></td>
                </tr>
            </table>

//点击按钮粘贴

文档pdfDoc=新文档(PageSize.A4、25、10、25、10)


尝试下载并添加bytescout的引用,然后使用以下代码:

using System.Diagnostics;
using Bytescout.PDF;

namespace WordSpacing
{
    /// <summary>
    /// This example demonstrates how to change the word spacing.
    /// </summary>
    class Program
    {
        static void Main()
        {
            // Create new document
            Document pdfDocument = new Document();
            pdfDocument.RegistrationName = "demo";
            pdfDocument.RegistrationKey = "demo";
            // Add page
            Page page = new Page(PaperFormat.A4);
            pdfDocument.Pages.Add(page);

            Canvas canvas = page.Canvas;

            Font font = new Font("Arial", 16);
            Brush brush = new SolidBrush();
            StringFormat stringFormat = new StringFormat();

            // Standard word spacing
            stringFormat.WordSpacing = 0.0f;
            canvas.DrawString("Standard word spacing 0.0", font, brush, 20, 20, stringFormat);

            // Increased word spacing
            stringFormat.WordSpacing = 5.0f;
            canvas.DrawString("Increased word spacing 5.0", font, brush, 20, 50, stringFormat);

            // Reduced word spacing
            stringFormat.WordSpacing = -2.5f;
            canvas.DrawString("Reduced word spacing -2.5", font, brush, 20, 80, stringFormat);


            // Save document to file
            pdfDocument.Save("result.pdf");

            // Cleanup 
            pdfDocument.Dispose();

            // Open document in default PDF viewer app
            Process.Start("result.pdf");
        }
    }
}
使用系统诊断;
使用Bytescout.PDF;
命名空间字间距
{
/// 
///此示例演示如何更改单词间距。
/// 
班级计划
{
静态void Main()
{
//创建新文档
文档pdfDocument=新文档();
pdfDocument.RegistrationName=“演示”;
pdfDocument.RegistrationKey=“演示”;
//添加页面
第页=新页(纸质格式A4);
pdfDocument.Pages.Add(第页);
Canvas=page.Canvas;
字体=新字体(“Arial”,16);
笔刷=新的SolidBrush();
StringFormat StringFormat=新的StringFormat();
//标准字间距
stringFormat.WordSpacing=0.0f;
画布.抽绳(“标准字距0.0”,字体,画笔,20,20,stringFormat);
//增加字距
stringFormat.WordSpacing=5.0f;
画布.抽绳(“增加字距5.0”,字体,画笔,20,50,stringFormat);
//减少字距
stringFormat.WordSpacing=-2.5f;
画布.抽绳(“缩小字距-2.5”,字体,画笔,20,80,stringFormat);
//将文档保存到文件
pdfDocument.Save(“result.pdf”);
//清理
pdfDocument.Dispose();
//在默认PDF查看器应用程序中打开文档
Process.Start(“result.pdf”);
}
}
}

我没有获得Winnovative.WnvHtmlConvert命名空间的链接。是否已将dll引用添加到项目中?所需命名空间:使用iTextSharp.text;使用iTextSharp.text.pdf;
Imports Winnovative.WnvHtmlConvert
            PdfWriter pdfWriter = PdfWriter.GetInstance(pdfDoc, Response.OutputStream);

            pdfDoc.Open();

            Paragraph Text = new Paragraph("This is test file"); // hardcode text

            pdfDoc.Add(new Phrase(this.lbl1.Text.Trim())); //from label

            pdfDoc.Add(new Phrase(this.txt1.Text.Trim())); //from textbox

            pdfDoc.Add(Text);

            pdfWriter.CloseStream = false;

            pdfDoc.Close();

            Response.Buffer = true;

            Response.ContentType = "application/pdf";

            Response.AddHeader("content-disposition", "attachment;filename=Example.pdf");
            Response.Cache.SetCacheability(HttpCacheability.NoCache);

            Response.Write(pdfDoc);

            Response.End();
using System.Diagnostics;
using Bytescout.PDF;

namespace WordSpacing
{
    /// <summary>
    /// This example demonstrates how to change the word spacing.
    /// </summary>
    class Program
    {
        static void Main()
        {
            // Create new document
            Document pdfDocument = new Document();
            pdfDocument.RegistrationName = "demo";
            pdfDocument.RegistrationKey = "demo";
            // Add page
            Page page = new Page(PaperFormat.A4);
            pdfDocument.Pages.Add(page);

            Canvas canvas = page.Canvas;

            Font font = new Font("Arial", 16);
            Brush brush = new SolidBrush();
            StringFormat stringFormat = new StringFormat();

            // Standard word spacing
            stringFormat.WordSpacing = 0.0f;
            canvas.DrawString("Standard word spacing 0.0", font, brush, 20, 20, stringFormat);

            // Increased word spacing
            stringFormat.WordSpacing = 5.0f;
            canvas.DrawString("Increased word spacing 5.0", font, brush, 20, 50, stringFormat);

            // Reduced word spacing
            stringFormat.WordSpacing = -2.5f;
            canvas.DrawString("Reduced word spacing -2.5", font, brush, 20, 80, stringFormat);


            // Save document to file
            pdfDocument.Save("result.pdf");

            // Cleanup 
            pdfDocument.Dispose();

            // Open document in default PDF viewer app
            Process.Start("result.pdf");
        }
    }
}