PdfSharp - 入门

时间:2012-09-12 15:07:15

标签: c# visual-studio-2010 pdfsharp

我有一个C#控制台应用程序,并希望将PdfSharp的一些功能添加到它。

我已经从Sourceforge下载了两个zip文件......程序集和源代码。

似乎有几种方法可以添加功能

  • 对解压缩的程序集文件夹中的.dll文件的引用。
  • 实际上将项目添加到我的解决方案中。

我正在尝试使用后一种方法。

这就是我需要做的全部吗?

  1. 我将解压缩的源代码文件中的文件夹“PdfSharp”复制并粘贴到我的解决方案文件夹中。
  2. 在VS中,我转到解决方案资源管理器,右键单击解决方案,然后选择Add> Existing Project...
  3. 然后我选择了以下......
  4. enter image description here

    我假设项目PdfSharp-ag.csproj; PdfSharp-Hybrid.csproj; PdfSharp-WPF.csproj适用于其他一些应用程序?我的意思是我的简单控制台应用程序是我需要的项目PdfSharp.csproj

    一旦我按照上述步骤操作,我的解决方案如下所示:

    enter image description here

    ...并且在原始项目参考部分中引用PdfSharp时进行扩展:

    enter image description here


    然后,我使用以下代码测试了一切正常的控制台应用程序:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Drawing; //<< additional reference required
    
    using PdfSharp;
    using PdfSharp.Pdf;
    using PdfSharp.Drawing;
    
    namespace PDFsharpSolutionQF
    {
      class Program
      {
        static void Main(string[] args)
        {
    
    
          PdfDocument pdf = new PdfDocument();
          pdf.Info.Title = "My First PDF";
          PdfPage pdfPage = pdf.AddPage();
          XGraphics graph = XGraphics.FromPdfPage(pdfPage);
          XFont font = new XFont("Verdana",20,XFontStyle.Bold);
          graph.DrawString("This is my first PDF document",font,XBrushes.Black,new XRect(0,0,pdfPage.Width.Point,pdfPage.Height.Point),XStringFormats.Center);
          string pdfFilename = "firstpage.pdf";
          pdf.Save(pdfFilename);
          //Process.Start(pdfFilename);
    
        }
      }
    }
    

3 个答案:

答案 0 :(得分:1)

您能详细说明为什么要尝试将程序源添加到自己的应用程序中吗?如果您只是想利用库的功能,那么只需在项目中引用DLL然后使用它提供的API就会好得多。

我能想到去源代码附近的唯一原因是a)如果你需要调试它或b)如果你打算以某种方式修改功能。您是尝试这样做,还是只是以通常的方式使用API​​?

答案 1 :(得分:1)

您可以使用PdfSharp.csproj或PdfSharp-WPF.csproj - 前者使用GDI +进行图形操作,后者使用WPF函数。 -Hybrid是内部的,-ag是SilverLight(尚未完全正常运行)。

答案 2 :(得分:1)

在项目中包含源代码的一个优点是无需分发DLL。我个人使用DLL。但我可以看到只分发EXE的优势。