Maison  >  Article  >  développement back-end  >  Comment convertir un pdf golang en txt

Comment convertir un pdf golang en txt

PHPz
PHPzoriginal
2023-04-24 09:10:08889parcourir

Aujourd'hui, je souhaite partager avec vous comment convertir des fichiers PDF en fichiers texte, en particulier en utilisant la bibliothèque PDF en TXT de Golang. Le PDF est un format très courant dans la littérature moderne, mais dans certains cas, pour le traitement et l'analyse de texte, il peut être gênant d'utiliser des documents au format PDF. Par conséquent, nous devons le convertir au format texte pour une utilisation ultérieure. Bien qu'il existe de nombreux logiciels capables de le faire, il est plus efficace et plus flexible d'utiliser une bibliothèque pour convertir un PDF en texte dans un environnement de programmation.

Tout d’abord, nous devons télécharger la bibliothèque Golang PDF vers TXT. Il existe de nombreuses bibliothèques PDF vers TXT disponibles, mais nous utilisons l'une des rares plus populaires : go-pdf-to-text. Cette bibliothèque est un bon choix car elle est facile à utiliser et possède une bonne documentation.

Installer la bibliothèque go-pdf-to-text est simple, il suffit d'exécuter la commande suivante dans la ligne de commande :

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

Après avoir téléchargé ces bibliothèques, nous pouvons écrire le code et le convertir en texte. Voici un exemple de code pour convertir un fichier PDF au format texte :

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

Dans cet exemple, nous ouvrons d'abord le fichier PDF, puis le chargeons dans pdfReader. Nous utilisons ensuite la fonction New du package extract pour créer un extracteur qui charge le contenu de la page en mémoire pour l'extraction de texte. À l’aide d’une boucle, nous parcourons toutes les pages et les convertissons en texte.

Nous pouvons voir que l'utilisation de cette bibliothèque n'est pas difficile du tout. Allez-y et essayez cette bibliothèque pour la conversion PDF.

En plus de la bibliothèque go-pdf-to-text, il existe d'autres bibliothèques qui peuvent être utilisées pour convertir des PDF en TXT. Cependant, chaque bibliothèque présente des avantages et des limites différents sur certains aspects. Par exemple, certaines de ces bibliothèques peuvent convertir plus rapidement, tandis que d'autres peuvent fournir une extraction de texte plus précise. Par conséquent, vous devez faire des compromis lors du choix d'une bibliothèque en fonction des besoins de votre projet et de l'exactitude du texte souhaité.

En bref, PDF to TXT peut être un outil très utile, surtout lorsque le contenu du PDF doit être analysé et traité. En utilisant Golang, vous pouvez facilement convertir des fichiers PDF au format TXT et en extraire les données texte requises. La bibliothèque go-pdf-to-text que nous avons utilisée fonctionne très bien, mais vous pouvez utiliser d'autres bibliothèques pour cette tâche, en fonction des besoins de votre projet et du résultat souhaité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn