You can use iTextSharp.
Something like this might work for you:
PdfReader pdfReader = null;
PdfStamper pdfStamper = null;
pdfReader = new PdfReader(this.signFile.FullName);
using (FileStream outStream = new FileStream(targetFilename, FileMode.Create))
{
try
{
pdfStamper = new PdfStamper(pdfReader, outStream);
iTextSharp.text.Image sigImg = iTextSharp.text.Image.GetInstance(SIGNATURE_IMAGE_PATH);
sigImg.ScaleToFit(MAX_WIDTH, MAX_HEIGHT);
sigImg.SetAbsolutePosition(POS_X, POS_X);
PdfContentByte over = pdfStamper.GetOverContent(PAGE_NUM_TO_SIGN);
over.AddImage(sigImg);
}
finally
{
if (pdfStamper != null)
pdfStamper.Close();
if (pdfReader != null)
pdfReader.Close();
}
}
Cheers,
Edo