using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.IO;
using System.Drawing;
using PdfSharp;
using PdfSharp.Drawing;
using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;
namespace Lightnings_Extractor
{
class PDF
{
public PDF()
{
// Create a new PDF document
PdfDocument document = new PdfDocument();
document.Info.Title = "Created with PDFsharp";
// Create an empty page
PdfPage page = document.AddPage();
// Get an XGraphics object for drawing
XGraphics gfx = XGraphics.FromPdfPage(page);
// Create a font
XFont font = new XFont("Verdana", 20, XFontStyle.BoldItalic);
// Draw the text
gfx.DrawString("Hello, World!", font, XBrushes.Black,
new XRect(0, 0, page.Width, page.Height),
XStringFormats.Center);
// Save the document...
const string filename = @"d:\HelloWorld.pdf";
document.Save(filename);
// ...and start a viewer.
Process.Start(filename);
}
private void DrawImage(XGraphics gfx, int number)
{
}
}
}
I’m taking the sample from this link: http://www.pdfsharp.net/wiki/Graphics-sample.ashx
There is a sample there: Draw an image in original size
void DrawImage(XGraphics gfx, int number)
{
BeginBox(gfx, number, "DrawImage (original)");
XImage image = XImage.FromFile(jpegSamplePath);
// Left position in point
double x = (250 - image.PixelWidth * 72 / image.HorizontalResolution) / 2;
gfx.DrawImage(image, x, 0);
EndBox(gfx);
}
What am I missing here?
BeginBoxandEndBoxare helper methods defined at the bottom of the sample page.Note that these methods are only to create the surrounding box and is probably not what you need to achieve the functionality you really want (in this case, to draw an image in original size). So I would just remove those two lines from the code.