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

How to convert PDF to PDF A1B in .NET Core

Platform: ASP.NET Core |
Control: PDF

The Syncfusion Essential PDF is a .NET Core PDF library used to create, read, and edit PDF documents. Using this library, you can convert PDF to PDF/A-1b, PDF/A-2b, and PDF/A3-b in ASP.NET Core.

Steps to convert PDF to PDF/A-1b document in ASP.NET Core using C#

  1. Create a new ASP.NET Core console application.

Create a Console application

  1. Install the Syncfusion.Pdf.Imaging.Net.Core NuGet package as a reference to your .NET Core project from NuGet.org.

Install Imaging packages

  1. Install the SkiaSharp NuGet package as a reference to your .NET Core project from NuGet.org.

Install skiasharp packages

 

  1. Include the following namespaces in the Program.cs file.
    using SkiaSharp;
    using Syncfusion.Pdf;
    using Syncfusion.Pdf.Graphics;
    using Syncfusion.Pdf.Parsing;
    using System.IO;
    

 

  1. Include the following code sample to convert PDF to PDF/A-1b using C#.
    //Load an existing PDF document.
    FileStream docStream = new FileStream(@"../../../Input.pdf", FileMode.Open, FileAccess.Read);
    PdfLoadedDocument loadedDocument = new PdfLoadedDocument(docStream);
    //Sample level font event handling.
    loadedDocument.SubstituteFont += LoadedDocument_SubstituteFont;
    //Convert the loaded document into PDF/A document.
    loadedDocument.ConvertToPDFA(PdfConformanceLevel.Pdf_A1B);
    MemoryStream stream = new MemoryStream();
    //Save the document.
    loadedDocument.Save(stream);
    stream.Position = 0;
    FileStream filestream = new FileStream("../../../Output.pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite);
    stream.WriteTo(filestream);
    //Close the document.
    loadedDocument.Close(true);
    

 

//Substitute the non-embedded fonts.
static void LoadedDocument_SubstituteFont(object sender, PdfFontEventArgs args)
{
//Get the font name.
 
string fontName = args.FontName.Split(',')[0];
 
//Get the font style.
 
PdfFontStyle fontStyle = args.FontStyle;
 
SKFontStyle sKFontStyle = SKFontStyle.Normal;
 
if (fontStyle != PdfFontStyle.Regular)
{
if (fontStyle == PdfFontStyle.Bold)
{
sKFontStyle = SKFontStyle.Bold;
}
else if (fontStyle == PdfFontStyle.Italic)
{
sKFontStyle = SKFontStyle.Italic;
}
else if (fontStyle == (PdfFontStyle.Italic | PdfFontStyle.Bold))
{
sKFontStyle = SKFontStyle.BoldItalic;
}
}
SKTypeface typeface = SKTypeface.FromFamilyName(fontName, sKFontStyle);
 
SKStreamAsset typeFaceStream = typeface.OpenStream();
 
MemoryStream memoryStream = null;
 
if (typeFaceStream != null && typeFaceStream.Length > 0)
{
//Create a fontData from the type face stream.
byte[] fontData = new byte[typeFaceStream.Length - 1];
typeFaceStream.Read(fontData, typeFaceStream.Length);
typeFaceStream.Dispose();
//Create a new memory stream from the font data.
memoryStream = new MemoryStream(fontData);
}
//Set the font stream to the event args.
args.FontStream = memoryStream;
}
  1. By executing the program, you will get the PDF document as follows.

 

Output document

A complete work sample can be downloaded from PDFToPDFA1b_Sample.zip.

Take a moment to peruse the documentation. You will also find other options like create PDF/A-1b and PDF/X-1a document and features like converting Word to PDF, Excel to PDF, and HTML to PDF with code examples.

Refer to this link to explore the rich set of Syncfusion Essential PDF features.

An online sample link to convert PDF to PDF/A-1b standard document.

 

Note:

Starting with v16.2.0.x, if you reference Syncfusion assemblies from the trial setup or the NuGet feed, include a license key in your projects. Refer to this link to learn about generating and registering the Syncfusion license key in your application to use the components without a trail message.

Also see:

https://help.syncfusion.com/file-formats/pdf/working-with-pdf-conformance

https://www.syncfusion.com/kb/9515/how-to-convert-pdf-to-pdf-a-1b-using-c-and-vb-net

 

 

2X faster development

The ultimate ASP.NET Core UI toolkit to boost your development speed.
ADD COMMENT
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