Go API для создания и обработки PDF-документа
Библиотека Go, которая дает разработчикам программного обеспечения возможность импортировать, изменять, манипулировать и сохранять PDF-документы.
Gopdf — это библиотека Go с открытым исходным кодом, которая включает функции для работы с документами PDF внутри приложений Go. Библиотека помогает разработчикам создавать и изменять PDF-файлы с помощью всего пары строк кода Go. Библиотека включает в себя встроенный подшрифт Unicode для популярных языков, таких как китайский, японский, корейский и т. д.
Библиотека очень стабильна и очень проста в использовании. Он включает в себя несколько важных функций, связанных с созданием и управлением PDF, таких как печать текста, добавление и замена изображений, использование ссылок внутри PDF, добавление страницы в PDF, рисование линии, овала или многоугольника на странице PDF, поворот изображения или текста. , установить прозрачность для текста, кернинг шрифта, создать PDF-файлы, защищенные паролем, и многое другое.
.
Начало работы с gopdf
Рекомендуемый способ установки gopdf — использовать GitHub. Чтобы установить gopdf в вашей системе, выполните следующую команду
Установите gopdf через GitHub
go get https://github.com/signintech/gopdf.git
Для получения последнего обновления выполните следующую команду.
Создавайте PDF-файлы с помощью Go Library
Библиотека gopdf с открытым исходным кодом дает разработчикам программного обеспечения возможность создавать и изменять PDF-документы внутри приложений Go. PDF — один из ведущих форматов файлов, который широко используется в образовательных, юридических, медицинских, малых предприятиях и ИТ-отраслях. PDF-файл, созданный с помощью библиотеки, имеет ряд преимуществ перед другими ведущими форматами файлов, таких как простота создания, лучшая безопасность, переносимость, универсальная совместимость, надежность и многое другое.
Вставка изображений в PDF через Go
Библиотека gopdf включает в себя функции для вставки изображений в свои PDF-документы внутри своих собственных приложений. Вы также можете установить ширину, высоту и место на странице PDF по вашему выбору. После вставки вы можете легко изменить и заменить его любым другим поддерживаемым типом изображения, используя пару строк кода GO. Вы можете использовать некоторые популярные форматы изображений, такие как JPEG, PNG, GIF, TIFF и многие другие.
Загрузить изображение на страницы PDF через Go
package main
import (
"log"
"github.com/signintech/gopdf"
)
func main() {
pdf := gopdf.GoPdf{}
pdf.Start(gopdf.Config{PageSize: *gopdf.PageSizeA4 })
pdf.AddPage()
var err error
err = pdf.AddTTFFont("loma", "../ttf/Loma.ttf")
if err != nil {
log.Print(err.Error())
return
}
pdf.Image("../imgs/gopher.jpg", 200, 50, nil) //print image
err = pdf.SetFont("loma", "", 14)
if err != nil {
log.Print(err.Error())
return
}
pdf.SetXY(250, 200) //move current location
pdf.Cell(nil, "gopher and gopher") //print text
pdf.WritePdf("image.pdf")
}
Импорт и изменение существующего PDF
Библиотека gopdf с открытым исходным кодом позволяет программистам импортировать существующий PDF-документ и легко вносить в него изменения с помощью команды Go. Функция DownloadFile загрузит файл по URL-адресу в локальный файл. Это очень полезно, потому что не будет загружать в память весь файл, а только определенную страницу. После того, как вы внесете изменения и будете удовлетворены, вы можете легко сохранить их снова.
Создание PDF-файлов, защищенных паролем, с помощью Go Library
Библиотека gofpdf с открытым исходным кодом позволяет программистам программно защищать свои PDF-документы, применяя к ним защиту паролем. Он предоставил полную поддержку для создания файлов PDF с пользовательским паролем или может установить свой собственный пароль. Пользователи могут выбирать из набора различных доступных функций, таких как разрешение чтения PDF-файла, разрешение на открытие PDF-файла, изменение содержимого PDF-файла и т. д.
Загрузить изображение на страницы PDF через Go
package main
import (
"log"
"github.com/signintech/gopdf"
)
func main() {
pdf := gopdf.GoPdf{}
pdf.Start(gopdf.Config{
PageSize: *gopdf.PageSizeA4, //595.28, 841.89 = A4
Protection: gopdf.PDFProtectionConfig{
UseProtection: true,
Permissions: gopdf.PermissionsPrint | gopdf.PermissionsCopy | gopdf.PermissionsModify,
OwnerPass: []byte("123456"),
UserPass: []byte("123456789")},
})
pdf.AddPage()
pdf.AddTTFFont("loma", "../ttf/loma.ttf")
pdf.Cell(nil,"Hi")
pdf.WritePdf("protect.pdf")
}