Create PDF file on Linux or macOS

GemBox.Pdf is a standalone .NET component with cross-platform support, which you can also use on non-Windows platforms like Linux and macOS. This means that you can have a PDF creator in Linux using C# and VB.NET.

The following example shows how you can create a PDF document using GemBox.Pdf on Linux (Ubuntu).

Generated PDF document from .NET Core application running on Linux (Ubuntu)
Screenshot of PDF file created with .NET Core on Linux

Prerequisites

After installing the requirements listed above, you can follow these steps that show how you can easily use Visual Studio Code (VS Code) to create a simple Console project and C# code that generates a PDF file.

1. Open a project folder

  • Open VS Code.
  • Click "Open Folder" on the EXPLORER panel.
  • Select the folder you want your console project to be in, for instance a folder named GemBoxExample.
Selecting the folder you want your console project to be in
Screenshot of Visual Studio Code folder selection

2. Create a new console project

  • Open Integrated Terminal in VS Code by clicking "View" > "Terminal" or using CTRL + ` shortcut.
  • In the terminal window execute following command: dotnet new console
  • This command will create a code file (Program.cs) and a project file (GemBoxExample.csproj) inside the opened folder.
Creating a C# console project
Screenshot of Visual Studio Code new console command

3. Edit project files

  • Add a reference to GemBox.Pdf in the GemBoxExample.csproj file:
    <ItemGroup>
        <PackageReference Include="GemBox.Pdf" Version="*" />
        <PackageReference Include="HarfBuzzSharp.NativeAssets.Linux" Version="*" />
        <PackageReference Include="SkiaSharp.NativeAssets.Linux" Version="*" />
    </ItemGroup>
  • Edit the C# code in Program.cs file:
    using GemBox.Pdf;
    
    class Program
    {
        static void Main()
        {
            // If using the 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();
    
                document.Save("Output.pdf");
            }
        }
    }

4. Run the console project

  • In the terminal window execute the following command: dotnet run
  • This command will run your Console application and create a PDF document (Output.pdf) that you open in any PDF application.
Running a C# console project
Screenshot of Visual Studio Code run command

Limitations on Linux or macOS

You can use the full functionality of GemBox.Pdf on Unix systems, but with the following exceptions:

These features currently have WPF dependencies which means they require a .NET Windows Desktop Runtime. However, we do have plans for providing cross-platform support for them in future releases.

See also


Next steps

GemBox.Pdf is a .NET component that enables developers to read, merge and split PDF files or execute low-level object manipulations from .NET applications in a simple and efficient way.

Download Buy