Welcome GuestLogin

PDFsharp and MigraDoc Wiki



Quick Search


Visit the new Website for PDFsharp & MigraDoc Foundation 6.0 for .NET 6 and find information about the new version for Windows, Linux, and other platforms.


It is very difficult for us to fix a bug which we cannot replicate. We cannot even test whether the bug was fixed if we cannot replicate it. In the best case, when submitting a bug report provide us a solution that allows us to replicate the bug.

Many people showed us a few lines of their code on the forum. In many cases, the code was running fine after we built an application around the code snippet. The problem was with the code that was not shown - and we wasted our time.

Make the issue reproducible

The key to have an issue resolved is to make it reproducible.

On Stack Overflow this is know as MCVE: a Minimal, Complete, and Verifiable Example
MCVE on Stack Overflow
See also:

Send us a solution that contains as little code as possible and that allows us to replicate a bug. With as few steps as possible.

Start with our prepared Issue Submission Templates

We have created one solution for PDFsharp and one solution for MigraDoc.

Basically these are our Hello World samples.

You can use them as a template to build your sample that allows us to replicate the issue you have found.

Download the PDFsharp Issue Submission Template.

Download the MigraDoc Issue Submission Template.

To get you started

These solutions basically contain the PDFsharp Hello World sample or the MigraDoc Hello World sample respectively. Change as you wish to make the sample replicate the issue you wish us to fix. Remove what you do not need.

How it works

There are three projects: for the CORE, GDI, and WPF build respectively. The three projects share the same source file Program.cs. Just add your code to this source file.

If your code uses platform-specific routines, feel free to wrap it with "#if GDI" or "#if WPF". This will ensure that all three projects compile and we can see which build we have to use.


Sometimes issues are platform-specific, due to different implementations in PDFsharp. Sometimes the issue is with the platform-specific routines that PDFsharp calls. The Issue Submission Template allows you to test your code with three builds of PDFsharp. If the issue does not apply to all platforms, maybe you can work around the problem by switching to a different build.

Information about NuGet Packages

The PDFsharp and MigraDoc samples refer to NuGet packages.

In the best case, you already have installed the NuGet Package Manager (NPM) and you also have set the NPM to download missing packages during compile.

In the worst case you didn’t even install the NuGet Package Manager yet. For further information, please refer to this page:

Visit the new Website for PDFsharp & MigraDoc Foundation 6.0 for .NET 6 and find information about the new version for Windows, Linux, and other platforms.


ScrewTurn Wiki version Some of the icons created by FamFamFam.

Impressum - Privacy Policy, Data Protection Declaration, Legal Notice