Convertir un PDF en différents formats d'image avec Python

2024-01-17 02:03:29 Tesia tian

Convert PDF to Various Image Formats with Python

La conversion de PDF en image offre plusieurs avantages, notamment une compatibilité améliorée, une flexibilité d'édition améliorée, un partage simplifié et une représentation visuelle optimisée. La conversion de PDF en images garantit la compatibilité sur diverses plates-formes et appareils, car les images sont largement prises en charge et facilement visualisables. Il permet également des options d'édition plus flexibles, car les images peuvent être éditées à l'aide d'une gamme de logiciels de conception graphique. De plus, la conversion de PDF en images simplifie le partage, car les fichiers image sont plus petits et peuvent être facilement partagés par courrier électronique ou sur différentes plateformes numériques. Enfin, en convertissant les PDF en images, le contenu visuel est optimisé pour une meilleure représentation, ce qui facilite son intégration dans des présentations, des sites Web ou d'autres projets visuels.

Dans cet article, nous allons vous présenter comment facilement convertissez le PDF en différents formats de fichiers image tels que PNG, JPG, EMF, SVG et TIFF à l'aide de Python.

Bibliothèque Python pour la conversion de PDF en image

Parmi les nombreuses bibliothèques du marché prenant en charge la conversion de PDF en images, Spire.PDF for Python fournit l'interface de conversion la plus efficace. Il offre une flexibilité dans le choix du format de sortie, de la résolution et de la plage de pages à convertir. En l'utilisant, vous pouvez convertir des pages PDF individuelles ou l'intégralité du document en graphiques Bitmap et en graphiques vectoriels avec quelques lignes de code.

  • Les graphiques bitmap sont constitués de pixels, dépendent de la résolution et conviennent aux images réalistes. Des exemples de formats bitmap incluent JPG, PNG et GIF.
  • Les graphiques vectoriels sont basés sur des équations mathématiques, sont indépendants de la résolution et conviennent parfaitement aux illustrations et conceptions évolutives. Les formats tels que SVG et AI sont des exemples de formats graphiques vectoriels.

Avant de pouvoir exécuter les extraits de code ci-dessous, vous devrez installer Spire.PDF for Python via la commande pip suivante.

pip install Spire.PDF

Convertir un document PDF en fichiers PNG, JPG, GIF, BMP, EMF en Python

Spire.PDF for Python fournit la méthode SaveAsImage, qui permet aux utilisateurs de convertir des pages spécifiques d'un document PDF en flux d'images Bitmap. Ce flux d'images peut ensuite être exporté sous forme de fichier image avec une extension PNG, JPG, BPM, GIF ou EMF.

L'extrait de code suivant vous montre comment convertir un document PDF en plusieurs fichiers image bitmap en Python. Une page PDF produit un fichier image.

  • Python
from spire.pdf.common import *
    from spire.pdf import *
    
    # Create a PdfDocument object
    doc = PdfDocument()
    
    # Load a PDF document
    doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.pdf")
    
    # Iterate through all pages in the document
    for i in range(doc.Pages.Count):
    
        # Convert a specific page to an image stream
        with doc.SaveAsImage(i) as image:
            
            # Save the image stream as a PNG file
            image.Save("Output\\ConversionResults\\ToImage-{0:d}.png".format(i))
    
            # Save the image stream as a JPG file
            image.Save("Output\\ConversionResults\\ToImage-{0:d}.jpg".format(i))
    
            # Save the image stream as a BMP file
            image.Save("Output\\ConversionResults\\ToImage-{0:d}.bmp".format(i))
    
            # Save the image stream as a GIF file
            image.Save("Output\\ConversionResults\\ToImage-{0:d}.gif".format(i))
    
            # Save the image stream as an EMF file
            image.Save("Output\\ConversionResults\\ToImage-{0:d}.emf".format(i))
    
    # Close the document
    doc.Close()

Convertir un document PDF en fichiers SVG en Python

Pour terminer la conversion d'un PDF en fichiers SVG, vous pouvez appeler la méthode SaveToFile(filename: str, startIndex: int, endIndex: int, fileFormat: FileFormat) et spécifier le format de fichier de sortie comme SVG. L'extrait de code Python suivant charge un document PDF et enregistre chaque page en tant que fichier SVG individuel.

  • Python
from spire.pdf.common import *
    from spire.pdf import *
    
    # Create a PdfDocument object
    doc = PdfDocument()
    
    # Load a PDF document
    doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.pdf")
    
    # Iterate through all pages in the document
    for i in range(doc.Pages.Count):
        
        # Convert a specific page to a SVG file
        doc.SaveToFile("Output\\ConversionResults\\ToImage-{0:d}.svg".format(i), i, i, FileFormat.SVG)
    
    # Close the document
    doc.Close()

Convertir un document PDF en un fichier TIFF multipage en Python

Spire.PDF for Python ne fournit pas de méthode simple pour convertir un PDF en TIFF. Cependant, vous pouvez combiner les graphiques Bitmap générés par Spire.PDF dans un seul document TIFF. Cela nécessite une installation supplémentaire de Python Imaging Library (PIL), qui est une bibliothèque gratuite et open source permettant de manipuler différents formats de fichiers image à l'aide du langage Python.

pip install Pillow

Le code suivant vous montre comment convertir un document PDF en fichier TIFF multipage à l'aide de Spire.PDF for Python et PIL.

  • Python
from spire.pdf.common import *
    from spire.pdf import *
    
    from PIL import Image
    from io import BytesIO
    
    # Create a PdfDocument object
    doc = PdfDocument()
    
    # Load a PDF document
    doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Input.pdf")
    
    # Create an empty list to store PIL Images
    images = []
    
    # Iterate through all pages in the document
    for i in range(doc.Pages.Count):
    
        # Convert a specific page to an image stream
        with doc.SaveAsImage(i) as imageData:
    
            # Open the image stream as a PIL image
            img = Image.open(BytesIO(imageData.ToArray())) 
    
            # Append the PIL image to list
            images.append(img)
    
    # Save the PIL Images as a multi-page TIFF file
    images[0].save("Output/Result.tiff", save_all=True, append_images=images[1:])
    
    # Close the document
    doc.Close()

Conclusion

Dans cet article de blog, nous avons exploré comment convertir un PDF en formats de fichiers image populaires tels que PNG, JPG, SVG et TIFF à l'aide de Spire.PDF for Python. Avec l'aide de cette bibliothèque PDF, vous pouvez convertir une page particulière ou l'intégralité du document PDF en images de haute qualité. Au contraire, cette bibliothèque vous permet de convertir l'image en PDF aussi. Pour plus de tutoriels, veuillez consulter notre documentation en ligne. Si vous avez des questions, n'hésitez pas à nous contacter via le Forum Spire.PDF.

Voir également