We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

Export Diagram to PDF in multiple Page

Platform: WinForms |
Control: Diagram

Export Diagram to PDF in multiple Pages

Syncfusion Diagram has the support to convert the Diagram into PDF format in multiple pages using Syncfusion’s PDF.Base Dll. Initially need to create an Empty Pdf document and add/create pages for the created document based on the diagram size.

Required Dll:


The below code snippet is used to convert the Diagram into PDF format.



//Creation of PDF document
Syncfusion.Pdf.PdfDocument pdfdoc = new Syncfusion.Pdf.PdfDocument();
float height = 0;
Image img = null;
Graphics gfx;
RectangleF rectBounding = RectangleF.Empty;
while (height < diagram1.Model.Size.Height)
//Adds pages for the created PDF Document
img = new Bitmap((int)diagram1.Model.Size.Width, (int)pdfdoc.Pages[pdfdoc.Pages.Count - 1].Size.Height);
gfx = Graphics.FromImage(img);
rectBounding = new RectangleF(0, height, img.Width, img.Height);
this.diagram1.ExportDiagramToGraphics(gfx, rectBounding);
//Creation of PDF image
PdfImage pdfImage = Syncfusion.Pdf.Graphics.PdfImage.FromImage(img);
//Placing the Diagram
pdfdoc.Pages[pdfdoc.Pages.Count - 1].Graphics.DrawImage(pdfImage, new PointF(0.0F, 0.0F), pdfdoc.Pages[pdfdoc.Pages.Count - 1].GetClientSize());
height += rectBounding.Height;
//Saving the PDF file




'Creation of PDF document
Dim pdfdoc As New Syncfusion.Pdf.PdfDocument()
Dim height As Single = 0
Dim img As Image = Nothing
Dim gfx As Graphics
Dim rectBounding As RectangleF = RectangleF.Empty
Do While height < diagram1.Model.Size.Height
'Adds pages for the created PDF Document
img = New Bitmap(CInt(Fix(diagram1.Model.Size.Width)), CInt(Fix(pdfdoc.Pages(pdfdoc.Pages.Count - 1).Size.Height)))
gfx = Graphics.FromImage(img)
rectBounding = New RectangleF(0, height, img.Width, img.Height)
Me.diagram1.ExportDiagramToGraphics(gfx, rectBounding)
'Creation of PDF image
Dim pdfImage As PdfImage = Syncfusion.Pdf.Graphics.PdfImage.FromImage(img)
'Placing the Diagram
pdfdoc.Pages(pdfdoc.Pages.Count - 1).Graphics.DrawImage(pdfImage, New PointF(0.0F, 0.0F), pdfdoc.Pages(pdfdoc.Pages.Count - 1).GetClientSize())
height += rectBounding.Height
'Saving the PDF file


Please refer the below attached sample.


2X faster development

The ultimate WinForms UI toolkit to boost your development speed.
You must log in to leave a comment

Please sign in to access our KB

This page will automatically be redirected to the sign-in page in 10 seconds.

Up arrow icon

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon

Live Chat Icon For mobile