Skip to content

Instantly share code, notes, and snippets.

@groupdocs-cloud-gists
Last active November 18, 2022 11:18
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/5a8f18d2f7963048d309e2fa50ef5bda to your computer and use it in GitHub Desktop.
Save groupdocs-cloud-gists/5a8f18d2f7963048d309e2fa50ef5bda to your computer and use it in GitHub Desktop.
Convert Word to PDF Programmatically in C#

You can convert Word to PDF file programmatically on the cloud. In this article, you will learn how to convert Word to PDF format in C# using REST API.

The following topics are covered in this article:

  1. Document and File Conversion API - .NET SDK
  2. Convert Word to PDF Programmatically in C# using REST API
  3. Convert DOCX File to PDF in C# using Advanced Options
  4. How to Convert Range of Pages from Word to PDF in C#
  5. How to Convert Specific Pages of Word to PDF in C#
// How to Convert Range of Pages from Word to PDF in CSharp
using System;
using System.Collections.Generic;
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
{
// Convert Selected Pages from Word to PDF in CSharp
class Convert_Range_of_Pages_from_Word_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.docx",
Format = "pdf",
LoadOptions = new DocxLoadOptions { Password = "password" },
ConvertOptions = new PdfConvertOptions
{
FromPage = 2,
PagesCount = 2
},
OutputPath = "csharp-testing/output-sample-file.pdf"
};
// Convert to specified format
var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
Console.WriteLine("Successfully converted Selected Pages to PDF file in CSharp: " + response[0].Url);
}
catch (Exception e)
{
Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
}
}
}
}
// How to Convert Specific Pages of Word to PDF using CSharp
using System;
using System.Collections.Generic;
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
{
// Convert Specific Pages of Word to PDF using CSharp
class Convert_Specific_Pages_of_Word_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.docx",
Format = "pdf",
LoadOptions = new DocxLoadOptions { Password = "password" },
ConvertOptions = new PdfConvertOptions
{
Pages = new List<int?> {1, 2} // Page numbers starts from 1
},
OutputPath = "csharp-testing/output-sample-file.pdf"
};
// Convert to specified format
var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
Console.WriteLine("Successfully converted specific pages of Word file to PDF file format: " + response[0].Url);
}
catch (Exception e)
{
Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
}
}
}
}
// How to transform Word to PDF 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
{
// Convert Word DOCX to PDF using Advanced Options
class Convert_Word_To_PDF_Advanced_Options
{
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.docx",
Format = "pdf",
LoadOptions = new DocxLoadOptions { Password = "password" },
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 Word to PDF format: " + response[0].Url);
}
catch (Exception e)
{
Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
}
}
}
}
// How to Convert Word File to PDF using C# 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 Word DOCX to PDF file
class Convert_Word_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.docx",
Format = "pdf",
OutputPath = "csharp-testing/output-sample-file.pdf"
};
// Convert to specified format
var response = apiInstance.ConvertDocument(new ConvertDocumentRequest(settings));
Console.WriteLine("Successfully converted Word document to PDF file format: " + response[0].Url);
}
catch (Exception e)
{
Console.WriteLine("Exception when calling GroupDocs ConvertApi: " + e.Message);
}
}
}
}
// How to Download converted PDF 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.docx", FileMode.Open);
// create file upload request
var request = new UploadFileRequest("csharp-testing/input-sample-file.docx", fileStream, myStorage);
// upload file
var response = fileApi.UploadFile(request);
Console.WriteLine("Word 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