Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save groupdocs-cloud-gists/866cfbce770deeb2beac903085855c02 to your computer and use it in GitHub Desktop.
Save groupdocs-cloud-gists/866cfbce770deeb2beac903085855c02 to your computer and use it in GitHub Desktop.
Convert HTML to PDF in C# using REST API

You can convert HTML to PDF online programmatically on the cloud. In this article, we will learn how to convert HTML to PDF in C# using REST API.

The following topics are covered in this article:

  1. HTML to PDF C# Converter API - Free Download
  2. How to Convert HTML to PDF in C# using REST API
  3. Convert HTML to PDF in C# using Advanced Options
// How to Convert HTML to PDF in C# using REST API
using System;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;
namespace GroupDocs.Conversion.CSharp
{
// Change HTML to PDF File Online
class Convert_HTML_to_PDF
{
static void Main(string[] args)
{
try
{
// Create necessary API instances
var apiInstance = new ConvertApi(configuration);
// Prepare convert settings
var settings = new ConvertSettings
{
FilePath = "csharp-testing/input-sample-file.html",
Format = "pdf",
OutputPath = "csharp-testing/output-sample-file.pdf"
};
// Convert to specified format
var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
Console.WriteLine("Successfully converted HTML to PDF format online in C#: " + response[0].Url);
}
catch (Exception e)
{
Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
}
}
}
}
// How to Convert HTML to PDF in C# using Advanced Options
using System;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;
namespace GroupDocs.Conversion.CSharp
{
// Change HTML to PDF File Online
class Convert_HTML_to_PDF
{
static void Main(string[] args)
{
try
{
// Create necessary API instances
var apiInstance = new ConvertApi(configuration);
// Prepare convert settings
var settings = new ConvertSettings
{
FilePath = "csharp-testing/input-sample-file.html",
Format = "pdf",
ConvertOptions = new PdfConvertOptions
{
CenterWindow = true,
CompressImages = false,
DisplayDocTitle = true,
Dpi = 1024,
FitWindow = false,
FromPage = 1,
Grayscale = false,
ImageQuality = 100,
Linearize = false,
MarginTop = 5,
MarginLeft = 5,
Password = "password",
UnembedFonts = true,
RemoveUnusedStreams = true,
RemoveUnusedObjects = true,
RemovePdfaCompliance = false
},
OutputPath = "csharp-testing/output-sample-file.pdf"
};
// Convert to specified format
var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
Console.WriteLine("Successfully converted HTML to PDF online using C#: " + response[0].Url);
}
catch (Exception e)
{
Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
}
}
}
}
// How to Download converted HTML file in C#
using System;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;
namespace GroupDocs.Conversion.CSharp
{
// Download Output File
class Download_File
{
static void Main(string[] args)
{
try
{
// initialize api
var fileApi = new FileApi(configuration);
// create download file request
var downloadRequest = new DownloadFileRequest("csharp-testing/output-sample-file.pdf", myStorage);
// download file
Stream downloadResponse = fileApi.DownloadFile(downloadRequest);
// save file in working directory
using (var fileStream = System.IO.File.Create("H:\\groupdocs-cloud-data\\output-sample-file.pdf"))
{
downloadResponse.Seek(0, SeekOrigin.Begin);
downloadResponse.CopyTo(fileStream);
}
}
catch (Exception e)
{
Console.WriteLine("Exception when calling GroupDocs FileApi: " + e.Message);
}
}
}
}
using System;
using GroupDocs.Conversion.Cloud.Sdk.Api;
using GroupDocs.Conversion.Cloud.Sdk.Client;
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;
using System.IO;
namespace GroupDocs.Conversion.CSharp
{
// Upload Sample File
class Upload_File
{
static void Main(string[] args)
{
try
{
// initialize api
var fileApi = new FileApi(configuration);
// open file
var fileStream = File.Open(@"H:\groupdocs-cloud-data\input-sample-file.html", FileMode.Open);
// create file upload request
var request = new UploadFileRequest("csharp-testing/input-sample-file.html", fileStream, myStorage);
// upload file
var response = fileApi.UploadFile(request);
Console.WriteLine("HTML File Upload Process Completed: " + response.Uploaded.Count.ToString());
fileStream.Close();
}
catch (Exception e)
{
Console.WriteLine("Exception when calling GroupDocs FileApi: " + e.Message);
}
}
}
}
//Get clientId & clientSecret from https://dashboard.groupdocs.cloud (free registration is required).
string clientId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
string clientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
string myStorage = "test-internal-storage";
var configuration = new Configuration(clientId, clientSecret);
configuration.ApiBaseUrl = "https://api.groupdocs.cloud";
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment