Rumah  >  Artikel  >  pembangunan bahagian belakang  >  golang tukar pdf

golang tukar pdf

WBOY
WBOYasal
2023-05-27 14:49:081494semak imbas

Dalam masyarakat moden, PDF telah menjadi format dokumen penting dan digunakan secara meluas dalam kerja dan dalam kehidupan seharian. Walau bagaimanapun, apabila memproses dokumen PDF, kadangkala kita perlu menukar atau mengedit dokumen PDF sedia ada Pada masa ini, kita perlu menggunakan alat dan teknologi yang sepadan. Di antara alat dan teknologi ini, golang adalah yang paling praktikal dan popular. Ia boleh dengan mudah merealisasikan fungsi seperti membaca, mengubah suai dan menukar dokumen PDF. Artikel ini akan memperkenalkan cara golang menukar dokumen PDF.

1. Gunakan perpustakaan golang untuk mengendalikan dokumen PDF

Dalam golang, kami boleh menggunakan perpustakaan pihak ketiga untuk mengendalikan dokumen PDF, yang paling biasa digunakan ialah gopdf dan go-pdftk. Antaranya, gopdf boleh merealisasikan penjanaan dan operasi dokumen PDF asas, manakala go-pdftk boleh merealisasikan operasi dan penukaran dokumen PDF yang lebih kompleks. Dalam artikel ini, kami akan menggunakan gopdf sebagai contoh untuk menerangkan.

1. Baca dokumen PDF

Apabila menggunakan golang untuk mengendalikan dokumen PDF, anda perlu membaca kandungan dalam dokumen PDF terlebih dahulu. Kita boleh menggunakan fungsi ReadPdf() dalam perpustakaan gopdf untuk membaca dokumen PDF Kod contoh adalah seperti berikut:

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()) 
}

Dalam kod di atas, kita membaca contoh dalam direktori semasa melalui fungsi Read(). daripada dokumen pdf gopdf, dan dapatkan semua kandungan teks dalam dokumen melalui fungsi GetText().

2. Tukar dokumen PDF

Selepas membaca dokumen PDF, kita boleh mengubah suai dokumen PDF melalui beberapa fungsi dalam perpustakaan gopdf, seperti menambah teks, memasukkan gambar, dll. Berikut ialah beberapa contoh pengubahsuaian dokumen PDF asas:

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
    }
}

Dalam kod di atas, kami menambah halaman baharu melalui fungsi AddPage() dalam pustaka gopdf, dan menetapkan teks menggunakan SetFont() dan SetTextColor() fungsi Gaya dan warna. Akhir sekali, kami menyimpan dokumen PDF yang diubah melalui fungsi WritePdf().

3. Gabungkan dokumen PDF

Kadangkala kita perlu menggabungkan beberapa dokumen PDF menjadi satu Pada masa ini kita boleh menggunakan fungsi MergePdf() dalam perpustakaan gopdf, seperti yang ditunjukkan di bawah:

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
    }
}

Dalam kod di atas, kami menggabungkan dua fail example1.pdf dan example2.pdf menjadi satu melalui fungsi MergePdf() dan menyimpan dokumen PDF yang digabungkan melalui fungsi WritePdf().

2. Gunakan alat baris arahan pdftk untuk mengendalikan dokumen PDF

Selain menggunakan perpustakaan gopdf, kami juga boleh menggunakan alat baris arahan pdftk untuk mengendalikan dokumen PDF. pdftk ialah alat pemprosesan dokumen PDF yang digunakan secara meluas yang boleh menyelesaikan operasi seperti penyuntingan, penukaran dan gabungan pelbagai dokumen PDF melalui operasi baris arahan.

1. Pasang pdftk

Sebelum menggunakan pdftk, kita perlu memasang alat ini terlebih dahulu. pdftk ialah alat baris arahan merentas platform yang boleh dijalankan pada Windows, Linux dan Mac OS. Pada Windows dan Linux, kita boleh memasangnya dengan memuat turun fail binari, manakala pada Mac OS, kita perlu menggunakan Homebrew untuk memasangnya Kod contoh adalah seperti berikut:

# mac os上使用homebrew安装pdftk
brew install pdftk

Selepas memasang pdftk, kita boleh menggunakan. arahan Gunakan arahan pdftk dalam baris.

2. Gunakan pdftk untuk mengubah suai dokumen PDF

Dalam baris arahan, kita boleh menggunakan arahan pdftk untuk mengedit dan memanipulasi dokumen PDF. Berikut ialah beberapa contoh perintah pdftk asas:

Ubah suai kandungan halaman dalam fail PDF

pdftk input.pdf cat 1 output output.pdf

Gabung berbilang PDF fail ialah

pdftk file1.pdf file2.pdf cat output output.pdf

Gabungkan halaman tertentu berbilang fail PDF ke dalam satu fail

pdftk file1.pdf file2. pdf cat 1 3 output output.pdf

Padam halaman tertentu daripada fail PDF

pdftk input.pdf cat 1-4 6-end output output.pdf

Gabung berbilang Fail PDF ke dalam satu fail dalam susunan yang ditetapkan

pdftk file1.pdf file2.pdf shuffle output output.pdf

Dalam arahan pdftk ini, arahan cat digunakan untuk menukar PDF halaman tertentu dalam dokumen digabungkan menjadi satu fail, output menentukan nama fail output, dan shuffle digunakan untuk menggabungkan berbilang fail PDF ke dalam satu fail dalam susunan yang ditentukan.

Ringkasnya, menggunakan alat baris arahan pdftk dalam golang boleh mencapai pengeditan dan operasi dokumen PDF yang lebih kaya dan kompleks, dan ia juga boleh disepadukan dan dipanggil dengan mudah dengan alat baris arahan lain, meningkatkan pemprosesan PDF dengan sangat baik. dokumen.

Atas ialah kandungan terperinci golang tukar pdf. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:golang melaksanakan jsonArtikel seterusnya:golang melaksanakan json