PDfSharp or ITextSharp would do the trick.
on PdfSharp is like this:
class Program
{
static void Main(string[] args)
{
PdfDocument document = new PdfDocument();
document.Info.Title = "Created with PDFsharp";
PdfPage page = document.AddPage();
XGraphics gfx = XGraphics.FromPdfPage(page);
XFont font = new XFont("Verdana", 20, XFontStyle.BoldItalic);
gfx.DrawString("Hello, World!", font, XBrushes.Black,
new XRect(0, 0, page.Width, page.Height),
XStringFormats.Center);
const string filename = "HelloWorld.pdf";
document.Save(filename);
Process.Start(filename);
}
}
on ITextSharp is like this:
iTextSharp.text.Document oDoc = new iTextSharp.text.Document();
PdfWriter.GetInstance(oDoc, new FileStream("HelloWorld.pdf", FileMode.Create));
oDoc.Open();
oDoc.Add(new Paragraph("Hello World!"));
oDoc.Close();
I have used them both, and must say both are great, but iTextSharp can also render a PDF to an image (rasterize). PdfSharp is faster and smaller also.
hope it helps.