#タイトル: Go 言語で PDF を Word ドキュメントに変換するための効率的なソリューション
本文:
日々の事務作業では、編集やさらなる処理のために PDF ドキュメントを Word ドキュメントに変換する必要がよくあります。 Go 言語では、サードパーティのライブラリを使用するか、システム コマンドを直接使用して PDF to Word 機能を実装できます。この記事では、2 つの効率的なソリューションを紹介し、具体的なコード例を示します。1. サードパーティ ライブラリを使用する
Go 言語には、最も人気のあるライブラリの 1 つである PDF to Word 機能を実現できるサードパーティ ライブラリが多数あります。github.com/unidoc/unidoc です。このライブラリは、ほとんどのユーザーのニーズを満たす豊富な機能を提供します。
unidoc ライブラリを使用して PDF ドキュメントを Word ドキュメントに変換するコード例です。
package main import ( "fmt" "io" "github.com/unidoc/unidoc/common" "github.com/unidoc/unidoc/pdf/model" "github.com/unidoc/unidoc/writer/docx" ) func main() { // 打开PDF文档 pdfFile, err := common.NewPdfReaderFromFile("input.pdf") if err != nil { fmt.Println(err) return } // 创建Word文档 docxFile := docx.NewDocument() // 遍历PDF文档中的页面 for i := 0; i < pdfFile.NumPages(); i++ { // 获取当前页面 page := pdfFile.GetPage(i + 1) // 创建Word文档中的新页面 section := docxFile.AddSection() // 将PDF页面中的内容添加到Word文档中 err = addPdfPageToWordDocument(section, page) if err != nil { fmt.Println(err) return } } // 保存Word文档 err = docxFile.SaveToFile("output.docx") if err != nil { fmt.Println(err) return } fmt.Println("PDF文档已成功转换成Word文档。") } // 将PDF页面中的内容添加到Word文档中 func addPdfPageToWordDocument(section *docx.Section, page *model.PdfPage) error { // 获取PDF页面中的内容 content, err := page.GetContent() if err != nil { return err } // 创建Word文档中的新段落 paragraph := section.AddParagraph() // 将PDF页面中的内容添加到Word文档中 for _, element := range content { switch element.(type) { case *model.PdfText: // 将文本添加到Word文档中 text := element.(*model.PdfText) paragraph.AddText(text.Text) case *model.PdfImage: // 将图像添加到Word文档中 image := element.(*model.PdfImage) err = paragraph.AddImageFromBytes(image.ImageBytes) if err != nil { return err } } } return nil }
2. システム コマンドを使用します
サードパーティのライブラリを使用したくない場合は、システム コマンドを直接使用して PDF to Word 機能を実装することもできます。以下は、Windows システムでlibreoffice コマンドを使用して PDF ドキュメントを Word ドキュメントに変換するコード例です。 #上記では、PDF ドキュメントを Go 言語の Word ドキュメントに変換するための効率的なソリューションを 2 つ紹介します。最初のソリューションでは、サードパーティ ライブラリ
unidoc
以上がGo 言語による効率的な PDF to Word ドキュメント ソリューションの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。