Cube.Pdf.Ghostscript 7.0.2

.NET Standard 2.0 .NET Framework 3.5
NuGet\Install-Package Cube.Pdf.Ghostscript -Version 7.0.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
dotnet add package Cube.Pdf.Ghostscript --version 7.0.2
<PackageReference Include="Cube.Pdf.Ghostscript" Version="7.0.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Cube.Pdf.Ghostscript --version 7.0.2
#r "nuget: Cube.Pdf.Ghostscript, 7.0.2"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install Cube.Pdf.Ghostscript as a Cake Addin
#addin nuget:?package=Cube.Pdf.Ghostscript&version=7.0.2

// Install Cube.Pdf.Ghostscript as a Cake Tool
#tool nuget:?package=Cube.Pdf.Ghostscript&version=7.0.2


Ghostscript Native AppVeyor Codecov

Cube.Pdf.Ghostscript provides the wrapper APIs for the Ghostscript in the .NET Framework 3.5, 4.5, .NET Standard 2.0, or later. Note that the Cube.Pdf.Ghostscript reuqires the gsdll32.dll. You can download the DLL from or Cube.Native.Ghostscript NuGet package.


Cube.Pdf.Ghostscript.Converter is the base class of other converter classes and a thin wrapper of the Ghostscript API. Basic interfaces of converters are as follows:

// using System.Collections.Generics;
// using Cube.Pdf.Ghostscript;

public class Converter
    public Converter(Format format);
    public ICollection<Argument> Options;
    public ICollection<Code> Codes;
    public void Invoke(string src, string dest);

When you convert a PostScript file to any other formats, you specify the target format at the constructor of the Converter class, add some options, and finally execute the Invoke method. The Ghostscript API has two kinds of parameters, one is normal arguments and the other is PostScript codes. Options and Codes properties of the Converter class correspond respectively.

Instead of using the Converter class directly, you can use some inherited classes according to your purpose. For example, the following code converts to the PDF format.

// using Cube.Pdf;
// using Cube.Pdf.Ghostscript;

var converter = new PdfConverter
    Paper        = Paper.Auto,
    Orientation  = Orientation.Auto,
    ColorMode    = ColorMode.Rgb,
    Resolution   = 600,
    Compression  = Encoding.Jpeg,
    Downsampling = Downsampling.None,
    Version      = new PdfVersion(1, 7),
converter.Invoke(@"path\to\", @"path\to\dest.pdf");

When you set values to the properties, Converter inherited classes automatically add the corresponding arguments or PostScript codes to the Ghostscript API. The library provides the following variations. All available formats and other options are defined in the Parameters directory.

When you need to add some options manually, you create a new instance of the Argument class and add it to the Options property. Constructors of the Argument class are as follows:

// using Cube.Pdf.Ghostscript;

public class Argument
    public Argument(string name, string value);
    public Argument(string name, bool value);
    public Argument(string name, int value);
    public Argument(char type);
    public Argument(char type, int value);
    public Argument(char type, string name);
    public Argument(char type, string name, bool value);
    public Argument(char type, string name, int value);
    public Argument(char type, string name, string value);
    public Argument(char type, string name, string value, bool literal);


  1. Fork Cube.Pdf repository.
  2. Create a feature branch from the master branch (e.g. git checkout -b my-new-feature origin/master). Note that the master branch may refer to some pre-release NuGet packages. Try the rake clobber and copy commands when build errors occur.
  3. Commit your changes.
  4. Rebase your local changes to the master branch.
  5. Run the dotnet test command or the Visual Studio (NUnit 3 test adapter) and confirm that it passes.
  6. Create a new Pull Request.


Copyright © 2010 CubeSoft, Inc. See for more information.

Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows
.NET Core netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1
.NET Standard netstandard2.0 netstandard2.1
.NET Framework net35 net40 net403 net45 net451 net452 net46 net461 net462 net463 net47 net471 net472 net48
MonoAndroid monoandroid
MonoMac monomac
MonoTouch monotouch
Tizen tizen40 tizen60
Xamarin.iOS xamarinios
Xamarin.Mac xamarinmac
Xamarin.TVOS xamarintvos
Xamarin.WatchOS xamarinwatchos
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Cube.Pdf.Ghostscript:

Package Downloads

Core module of the CubePDF application.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
7.0.2 104 8/30/2022
7.0.1 73 8/26/2022
7.0.0 267 7/11/2022
6.0.2 480 1/26/2022
6.0.1 150 12/27/2021
6.0.0 311 11/19/2021
5.0.1 289 10/26/2021
5.0.0 328 9/28/2021
4.0.2 316 9/3/2021
4.0.1 287 8/6/2021
4.0.0 345 7/13/2021
3.1.5 223 7/5/2021
3.1.4 221 5/12/2021
3.1.3 215 4/15/2021
3.1.2 257 2/9/2021
3.1.1 305 12/4/2020
3.1.0 322 11/11/2020
3.0.0 339 10/7/2020
2.20.2 374 9/8/2020
2.20.1 369 7/28/2020
2.20.0 451 6/9/2020
2.18.4 372 4/27/2020
2.18.2 471 4/15/2020
2.18.1 620 11/25/2019
2.18.0 532 11/12/2019
2.17.0 675 8/2/2019
2.16.1 510 7/3/2019
2.16.0 556 6/21/2019
2.15.0 507 4/19/2019
2.14.0 554 2/17/2019
2.13.0 589 11/20/2018
2.12.0 539 10/23/2018
2.11.0 603 9/28/2018