Top 5 PDF and Office Features in UniPDF and UniOffice for Go

Most of the times, developers lack the foresight to determine the type of functionalities required by their clients. This causes delays and budget issues, but it doesn’t have to be like that. We will discuss what corporate clients usually require and whether it is wise to resort to inhouse development.

The greatest pain of Golang developers when building corporate applications, is how to work with PDF and office files. Working with PDF files is especially troubling since manipulating them requires you to have an in-depth understanding of the PDF format and how it works with images and other content.

Completing a task as mundane as placing a table at the right place on a PDF file can take hours when it should only take a few minutes. Anyone who has ever worked with PDF has gone through these troubles. This is where UniDoc’s pure Golang libraries come into play, which has been developing pure golang libraries since 2016 and provides an easier alternative to work with PDF and other office documents.

UniDoc Libraries

UniDoc has been active since 2016 and since the last four years, we’ve worked on improving the library’s speed, security and features. We listen to the customers and continuously update the library to match their requirements.

UniPDF and UniOffice are the two main products of UniDoc library, where the former is focused on working with PDFs and the latter allows you to work with word, excel and presentation files.

Using UniPDF, you can create new PDF reports, extract content such as images and text from old ones. You can also compress your PDF documents, secure them by creating digital signatures and automate your office tasks by using these features. We’ve recently introduced JBIG2 encoding support in UniPDF. This will allow you to further optimize your PDF reports by reducing the size of black and white images by up to 90%.

Using UniOffice, you can use the power of pure Golang to automate office tasks such as creating template letters. You can create new excel sheets, extract data from existing ones and work seamlessly with presentation files.

Playground Examples

It’s best to let the code speak for itself. To make it easier for developers to try out the power of UniDoc, we’ve set up a playground. You can quickly write code, run it and view the results without having to setup an environment on your local computer.

All you need is a smart device, a browser and a concept, which the playground will allow you to implement quickly. In the upcoming sections, we’ll share some examples from UniPDF and UniOffice.


All our libraries are built using pure Golang, which makes them really fast, robust and secure. The following examples will show how to start working with UniPDF.

1. Creating a PDF Report

In this example, we will be creating a cool looking invoice by running an example built using the power of UniPDF.

For more information, see our blog article on creating PDF reports in Go.

2. Flattening PDF Forms

Working with PDF forms can be complicated, UniPDF allows you to fill and flatten PDF forms quite easily, here is how:

3. Digitally Sign a PDF Report

You can secure your PDF documents by digitally signing them using UniPDF, here’s a simple example of it. To learn more about digital signatures, view this article.


UniDoc also offers UniOffice, which will allow you to work with word documents, excel sheets and presentation files. Here are a few examples of how UniOffice can make your professional life easier.

4. Creating Letters Using the Power of Golang

From reaching out to customers, to potential investors; having personalized letters can have a great impact on the success of your message. You can create customized letters following a template by using UniOffice, here is how:

5. Working with Excel Data

You can expertly design your excel sheets by using the power of pure golang provided by UniOffice. Here’s an example of how to create an excel sheet, store values, insert a formula, validate it and finally calculate it.

What’s Next?

UniDoc is always focused on improving itself according to the requirements of the customers. Since 2016, we have been updating our libraries to make it user-friendly while providing all the necessary functionalities. PaperCut is one of the many organizations that use the power of UniDoc to improve their operations, learn what they had to say about us.

We’ve recently added the JBIG2 encoding support for optimizing PDF reports. In the near future, we plan on introducing font subsetting in UniPDF, which will further reduce the size of generated PDF reports. We’re also working on HTML to PDF reports and are actively pursuing the integration of PAdES digital signatures in our library.

Building corporate applications can be challenging but, with the help of UniDoc, it becomes easier to expertly work with PDF and office documents. With this article, developers learn about the five core features that are normally demanded by corporate clients. The article illustrates how to assess your budget and decide whether to resort to inhouse development or choose a pure golang library like UniDoc. The library has been refined over the past four years to meet the complex requirements of our customers.

Alongside the features mentioned above, UniPDF also supports the rendering of PDF as images, optimization of PDFs and is also able to extract text from PDF reports. Visit the examples repository for more applications. As our focus is always on improving to the tune of our customer’s needs. Therefore, if you have a suggestion to improve the library or find a bug, please open a ticket on the issues section of our GitHub repository.