Can't seem to find much out there for this. I've a PDF, onto which I'd like to overlay an image of an electronic signature. Any suggestions on how to accomplish that using PDFSharp?
Thanks
Try the following
private void GeneratePDF(string filename, string imageLoc) { PdfDocument document = new PdfDocument(); // Create an empty page or load existing PdfPage page = document.AddPage(); // Get an XGraphics object for drawing XGraphics gfx = XGraphics.FromPdfPage(page); DrawImage(gfx, imageLoc, 50, 50, 250, 250); // Save and start View document.Save(filename); Process.Start(filename); } void DrawImage(XGraphics gfx, string jpegSamplePath, int x, int y, int width, int height) { XImage image = XImage.FromFile(jpegSamplePath); gfx.DrawImage(image, x, y, width, height); }
This will generate a new PDF with the specified image near the top of the page. If you need to use an existing document change the PdfDocument
constructor to
PdfDocument document = new PdfDocument(filename);
where filename
is the name of the file to load and change the PdfPage
line to
PdfPage page = document.Pages[pageNum];
where pageNum
is the number of the page on which you need to add the image.
After that, it just a matter of getting the positioning on the page by altering the parameters for DrawImage
to suit.
DrawImage(gfx, imageLoc, 50, 50, 250, 250);
Good luck!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With