Существует также Потрепаны . Я недавно смотрел на код, и казалось легким изменить/расширить. Это производит svg и (преобразованием) png.
iTextSharp делает это довольно чисто и имеет открытый исходный код. Кроме того, к нему есть очень хорошая сопроводительная книга автора , которую я рекомендую, если вы в конечном итоге будете заниматься более интересными вещами, такими как управление формами. Для нормального использования существует множество ресурсов в списках рассылки и группах новостей, где можно найти примеры того, как делать обычные вещи.
РЕДАКТИРОВАТЬ: как указано в @ Комментарий Чирага , @ Ответ Дарина содержит код, который определенно компилируется с текущими версиями.
Пример использования:
public static void ImagesToPdf(string[] imagepaths, string pdfpath)
{
using(var doc = new iTextSharp.text.Document())
{
iTextSharp.text.pdf.PdfWriter.GetInstance(doc, new FileStream(pdfpath, FileMode.Create));
doc.Open();
foreach (var item in imagepaths)
{
iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(item);
doc.Add(image);
}
}
}
Многие инструменты сравнения. Я использую PrimoPDF (БЕСПЛАТНО) http://www.primopdf.com/ , вы идете распечатать файл и распечатываете его в формате pdf на свой диск. работает в Windows
Нам очень повезло с PDFSharp (мы используем его для преобразования TIFF и текста в PDF для сотен медицинских заявлений каждый день).
Легко с iTextSharp :
class Program
{
static void Main(string[] args)
{
Document document = new Document();
using (var stream = new FileStream("test.pdf", FileMode.Create, FileAccess.Write, FileShare.None))
{
PdfWriter.GetInstance(document, stream);
document.Open();
using (var imageStream = new FileStream("test.jpg", FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
var image = Image.GetInstance(imageStream);
document.Add(image);
}
document.Close();
}
}
}
не уверен, ищете ли вы только бесплатные решения с открытым исходным кодом или рассматриваете также коммерческие решения. Но если вы включаете коммерческие решения, есть набор инструментов под названием EasyPDF SDK, который предлагает API для преобразования изображений (а также ряда других типов файлов) в PDF. Он поддерживает C #, и его можно найти здесь:
http://www.pdfonline.com/
Код C # будет выглядеть следующим образом:
Printer oPrinter = new Printer();
ImagePrintJob oPrintJob = oPrinter.ImagePrintJob;
oPrintJob.PrintOut(imageFile, pdfFile);
Чтобы быть полностью прозрачным, я должен отказаться от того, что работаю для разработчиков EasyPDF SDK (отсюда и мой идентификатор), поэтому это предложение не лишен некоторой личной предвзятости :) Но не стесняйтесь проверить версию eval, если вам интересно. Ура!