Heim  >  Artikel  >  Backend-Entwicklung  >  So konvertieren Sie Golang PDF in TXT

So konvertieren Sie Golang PDF in TXT

PHPz
PHPzOriginal
2023-04-24 09:10:08889Durchsuche

Heute möchte ich Ihnen zeigen, wie Sie PDF-Dateien in Textdateien konvertieren, insbesondere mithilfe der PDF-zu-TXT-Bibliothek in Golang. PDF ist ein in der modernen Literatur sehr verbreitetes Format, in manchen Fällen kann es jedoch für die Textverarbeitung und -analyse unpraktisch sein, Dokumente im PDF-Format zu verwenden. Daher müssen wir es zur weiteren Verwendung in das Textformat konvertieren. Zwar gibt es zahlreiche Softwareprogramme, die dies können, doch ist es effizienter und flexibler, eine Bibliothek zum Konvertieren von PDF-Dateien in Text in einer Programmierumgebung zu verwenden.

Zuerst müssen wir die Golang-PDF-zu-TXT-Bibliothek herunterladen. Es stehen viele PDF-zu-TXT-Bibliotheken zur Verfügung, aber wir verwenden eine der wenigen beliebtesten – go-pdf-to-text. Diese Bibliothek ist eine gute Wahl, da sie einfach zu verwenden ist und über eine gute Dokumentation verfügt.

Die Installation der go-pdf-to-text-Bibliothek ist einfach. Führen Sie einfach den folgenden Befehl in der Befehlszeile aus:

go get -u github.com/lu4p/unipdf/extract
go get -u github.com/lu4p/unipdf/model/textencoding
go get -u github.com/lu4p/unipdf/model/textlayout
go get -u github.com/lu4p/unipdf/model/textencoding/simplenc

Nachdem wir diese Bibliotheken heruntergeladen haben, können wir den Code schreiben und Konvertieren Sie es in Text. Hier ist ein Beispielcode zum Konvertieren einer PDF-Datei in das Textformat:

package main

import (
    "fmt"
    "os"

    pdf "github.com/lu4p/unipdf/v3/model"
    "github.com/lu4p/unipdf/v3/extractor"
)

func main() {
    f, err := os.Open("example.pdf")
    if err != nil {
        fmt.Println(err)
        os.Exit(1)
    }
    defer f.Close()

    pdfReader, err := pdf.NewPdfReader(f)
    if err != nil {
        fmt.Println(err)
        os.Exit(1)
    }

    numPages, err := pdfReader.GetNumPages()
    if err != nil {
        fmt.Println(err)
        os.Exit(1)
    }

    ex := extractor.New(pdfReader)

    for i := 1; i <= numPages; i++ {
        pageText, err := ex.ExtractPageText(i)
        if err != nil {
            fmt.Println(err)
            os.Exit(1)
        }
        fmt.Println(pageText)
    }
}

In diesem Beispiel öffnen wir zuerst die PDF-Datei und laden sie dann in pdfReader. Anschließend verwenden wir die Funktion „Neu“ aus dem Extraktpaket, um einen Extraktor zu erstellen, der den Seiteninhalt zur Textextraktion in den Speicher lädt. Mithilfe einer Schleife durchlaufen wir alle Seiten und wandeln sie in Text um.

Wir sehen, dass die Nutzung dieser Bibliothek überhaupt nicht schwierig ist. Probieren Sie diese Bibliothek für die PDF-Konvertierung aus.

Neben der go-pdf-to-text-Bibliothek gibt es noch einige andere Bibliotheken, die zum Konvertieren von PDF in TXT verwendet werden können. Allerdings weist jede Bibliothek in einigen Aspekten unterschiedliche Vorteile und Einschränkungen auf. Einige dieser Bibliotheken können beispielsweise schneller konvertieren, während andere möglicherweise eine genauere Textextraktion ermöglichen. Daher müssen Sie bei der Auswahl einer Bibliothek Kompromisse eingehen, die auf Ihren Projektanforderungen und der Genauigkeit Ihrer gewünschten Textausgabe basieren.

Kurz gesagt, PDF to TXT kann ein sehr nützliches Werkzeug sein, insbesondere wenn der Inhalt der PDF-Datei analysiert und verarbeitet werden muss. Mit Golang können Sie PDF-Dateien ganz einfach in das TXT-Format konvertieren und daraus die erforderlichen Textdaten extrahieren. Die von uns verwendete „go-pdf-to-text“-Bibliothek funktioniert hervorragend, aber Sie können für diese Aufgabe auch andere Bibliotheken verwenden, abhängig von Ihren Projektanforderungen und der gewünschten Ausgabe.

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie Golang PDF in TXT. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn