как использовать iTextSharp? - PullRequest
7 голосов
/ 22 мая 2011

Итак, мне нужен генератор PDF для моего приложения ASP.NET.Я скачал iTextSharp, потому что он, кажется, самый популярный бесплатный.Но после поиска в Интернете я не могу найти информацию, которая мне нужна, чтобы начать.Несколько уроков, которые я нашел, слишком запутаны.Я знаю, что там есть книга, но я студент и не хочу тратить деньги.Мне просто нужна действительно базовая пошаговая информация, желательно с кодом на VB.Самый базовый урок, который я нашел до сих пор, это http://www.mikesdotnetting.com/Article/80/Create-PDFs-in-ASP.NET-getting-started-with-iTextSharp,, но он не работает для меня.Я пытался следовать этому и придумал этот код:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using iTextSharp.text;
using iTextSharp.text.pdf;
using System.IO; 


public partial class Default3 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
    var doc1 = new Document();
    string path = Server.MapPath("PDFs");
    PdfWriter.GetInstance(doc1, new FileStream(path + "/Doc1.pdf", FileMode.Create));
    doc1.Open();
    doc1.Add(new Paragraph("My first PDF"));
    doc1.Close();
}
}

Но он выдает мне ошибку: "CS1502: лучший перегруженный метод соответствует для 'iTextSharp.text.pdf.PdfWriter.GetInstance (iTextSharp.text.Document, System.IO.Stream) «имеет несколько недопустимых аргументов», а выделенная строка - PdfWriter.GetInstance ...

Так или иначе, мне интересно, знает ли кто-нибудь, что я сделал неправильно в этом урокеили какие другие учебники я могу использовать.Или, если вы хотите дать мне базовое объяснение того, как начать своими словами, это было бы здорово.Имейте в виду, я, к сожалению, абсолютно ничего не знаю об этом.:) Спасибо.

Ответы [ 2 ]

3 голосов
/ 23 мая 2011

Трудно сказать, но я собираюсь догадаться, что ваш doc не является iTextSharp.text.Document;Со всеми этими командами «using» вполне возможно, что вы импортировали несколько классов с именем «Document» и получаете неправильный.

Вы должны иметь возможность использовать полное имя, чтобы увидеть, действительно ли этопроблема:

var doc1 = new iTextSharp.text.Document();

(Справедливое предупреждение: я не знаю vb.net, поэтому фактический синтаксис может быть совершенно другим)

using спам будет создавать проблемы с именемстолкновения рано или поздно.«Рано» в этом случае.

2 голосов
/ 22 мая 2011

iTextSharp - это прямой порт из Java iText библиотеки , поэтому вы можете ссылаться на любой из встроенных документов iText и обычно применять их к C # и .NET.

Лучшая документация находится в книге iText в действии , но вы можете загрузить пример кода книги с веб-сайта, а основные документы API также доступны онлайн.

В этой статье CodeProject также есть несколько великолепных загружаемых примеров исходного кода .NET iTextSharp:

...