In modern society, PDF has become an important document format and is widely used both in work and in daily life. However, when processing PDF documents, we sometimes need to change or edit existing PDF documents. At this time, we need to use corresponding tools and technologies. Among these tools and technologies, golang is the most practical and popular one. It can easily realize functions such as reading, modifying and converting PDF documents. This article will introduce how golang changes PDF documents.
1. Use golang library to operate PDF documents
In golang, we can use third-party libraries to operate PDF documents, the most commonly used ones are gopdf and go-pdftk. Among them, gopdf can realize basic PDF document generation and operation, while go-pdftk can realize more complex PDF document operation and conversion. In this article, we will use gopdf as an example to explain.
1. Read PDF documents
When using golang to operate PDF documents, you first need to read the content in the PDF document. We can use the ReadPdf() function in the gopdf library to read PDF documents. The example code is as follows:
import ( "fmt" "github.com/signintech/gopdf" ) func main() { //读取pdf文件 pdf, err := gopdf.Read("example.pdf") if err != nil { fmt.Println(err) return } //打印pdf中的文本内容 fmt.Println(pdf.GetText()) }
In the above code, we read the example in the current directory through the Read() function of gopdf. pdf document, and obtain all the text content in the document through the GetText() function.
2. Change the PDF document
After reading the PDF document, we can modify the PDF document through some functions in the gopdf library, such as adding text, inserting pictures, etc. Here are some basic PDF document modification examples:
import ( "github.com/signintech/gopdf" "image/color" ) func main() { //读取pdf文件 pdf, _ := gopdf.Read("example.pdf") //添加文字 pdf.AddPage() pdf.SetFont("Helvetica", "", 14) pdf.SetTextColor(color.Black) pdf.Text("hello, world", 100, 100) //保存更改后的pdf文件 err := pdf.WritePdf("example_edited.pdf") if err != nil { fmt.Println(err) return } }
In the above code, we add a new page through the AddPage() function in the gopdf library, and set the text using the SetFont() and SetTextColor() functions Style and color. Finally, we save the changed PDF document through the WritePdf() function.
3. Merge PDF documents
Sometimes we need to merge multiple PDF documents into one. At this time we can use the MergePdf() function in the gopdf library to operate, as shown below :
import ( "github.com/signintech/gopdf" ) func main() { //读取pdf文件 pdf1, _ := gopdf.Read("example1.pdf") pdf2, _ := gopdf.Read("example2.pdf") //合并pdf文件 pdf := gopdf.MergePdf([]*gopdf.GoPdf{pdf1, pdf2}) //保存合并后的pdf文件 err := pdf.WritePdf("example_combined.pdf") if err != nil { fmt.Println(err) return } }
In the above code, we merged the two files example1.pdf and example2.pdf into one through the MergePdf() function, and saved the merged PDF document through the WritePdf() function.
2. Use the pdftk command line tool to operate PDF documents
In addition to using the gopdf library, we can also use the command line tool pdftk to operate PDF documents. pdftk is a widely used PDF document processing tool that can complete operations such as editing, conversion and combination of various PDF documents through command line operations.
1. Install pdftk
Before using pdftk, we need to install this tool first. pdftk is a cross-platform command line tool that can run on Windows, Linux and Mac OS. On Windows and Linux, we can install it by downloading the binary file, while on Mac OS, we need to use Homebrew to install it. The sample code is as follows:
# mac os上使用homebrew安装pdftk brew install pdftk
After installing pdftk, we can use the command Use the pdftk command in the line.
2. Use pdftk to modify PDF documents
In the command line, we can use the pdftk command to edit and operate PDF documents. Here are some basic pdftk command examples:
pdftk input.pdf cat 1 output output.pdf
pdftk file1.pdf file2.pdf cat output output.pdf
pdftk file1.pdf file2.pdf cat 1 3 output output.pdf
pdftk input.pdf cat 1-4 6-end output output.pdf
pdftk file1.pdf file2.pdf shuffle output output.pdf
In these pdftk commands, the cat command is used to convert PDF Certain pages in the document are merged into one file, output specifies the name of the output file, and shuffle is used to merge multiple PDF files into one file in a specified order.
In short, using the pdftk command line tool in golang can achieve richer and more complex PDF document editing and operations, and can also be easily integrated and called with other command line tools, greatly improving the processing of PDF documents. Efficiency and flexibility.
The above is the detailed content of golang change pdf. For more information, please follow other related articles on the PHP Chinese website!