Create PDF file on Azure

GemBox.Pdf provides support for .NET Standard 2.0, a cross-platform specification of .NET APIs, which is why it can be used on various platforms including Azure functions and Azure App Services.

Azure Functions

To create an Azure function, search for "Azure Functions" in a new project dialog.

Screenshot of Visual Studio project type selection
Screenshot of Visual Studio project type selection

To avoid any potential issues with GemBox.Pdf, we recommend using the newest version of Azure Functions (v3).

The following example shows how you can create a PDF document using GemBox.Pdf in an Azure function.

Generated PDF document from Azure Functions
Screenshot of PDF file created with Azure function
using System.IO;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.WebJobs;
using Microsoft.Azure.WebJobs.Extensions.Http;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Logging;
using GemBox.Document;

public static class GemBoxFunction
{
    [FunctionName("GemBoxFunction")]
    public static async Task<IActionResult> Run(
        [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = null)] HttpRequest req,
        ILogger log)
    {
        // If using Professional version, put your serial key below.
        ComponentInfo.SetLicense("FREE-LIMITED-KEY");

        using (var document = new PdfDocument())
        {
            // Add a first empty page.
            document.Pages.Add();

            // Add a second empty page.
            document.Pages.Add();

            var fileName = "Output.pdf";

            using (var stream = new MemoryStream())
            {
                document.Save(stream);
                return new FileContentResult(stream.ToArray(), "application/pdf") { FileDownloadName = fileName };
            }
        }
    }
}
Imports System.IO
Imports Microsoft.AspNetCore.Mvc
Imports Microsoft.Azure.WebJobs
Imports Microsoft.Azure.WebJobs.Extensions.Http
Imports Microsoft.AspNetCore.Http
Imports Microsoft.Extensions.Logging
Imports GemBox.Document

Module GemBoxFunction
    <FunctionName("GemBoxFunction")>
    Async Function Run(
                       <HttpTrigger(AuthorizationLevel.Anonymous, "get", Route := Nothing)> req As HttpRequest,
                       log As ILogger) as Task(Of IActionResult)

        ' If using Professional version, put your serial key below.
        ComponentInfo.SetLicense("FREE-LIMITED-KEY")

        Using document As New PdfDocument()

            ' Add a first empty page.
            document.Pages.Add()

            ' Add a second empty page.
            document.Pages.Add()

            Dim fileName = "Output.pdf"

            Using stream As New MemoryStream()
                document.Save(stream)
                Return New FileContentResult(stream.ToArray(), "application/pdf") With { .FileDownloadName = fileName }
            End Using

        End Using

    End Function
End Module

Azure App Services

App Service is a fully managed platform for building, deploying and scaling web apps. GemBox.Pdf can be used from applications that run on an App Service.

To build an ASP.NET Core application, check out our ASP.NET Core example.

To publish an application to Azure App service you need to:

1. Pick Azure as publish target.

Screenshot of Visual Studio target selection
Screenshot of Visual Studio target selection

2. Pick Azure App Service as a specific target.

Screenshot of Visual Studio specific target selection
Screenshot of Visual Studio specific target selection

3. Specify existing App Service or create a new one.

Screenshot of Visual Studio specific App Service selection
Screenshot of Visual Studio specific App Service selection

Limitations on Azure Functions and App Services

The .NET Standard version of GemBox.Pdf has full functionality of .NET Framework version, but with few rendering limitations (unsupported features):

There are no limitations when using GemBox.Pdf on Windows on Azure Virtual Machine or Azure Cloud Services.

Want more?

Next example GitHub

Check the next example or select an example from the menu. You can also download our examples from the GitHub.


Like it?

Download Buy

If you want to try the GemBox.Pdf yourself, you can download the free version. It delivers the same performance and set of features as the professional version, but with some operations limited. To remove the limitation, you need to purchase a license.