Encoder l’image en Base64 en Python

Convertir l’image en chaîne codée en Base64. SVG, JPG, JPEG, PNG, BMP, GIF, TIFF, ICO, IFIF, WEBP et d’autres formats d’image sont pris en charge.

Encodage Base64

Base64 est un système de codage qui convertit les données binaires en texte ASCII, souvent utilisé pour transférer des données sur Internet. Lorsqu’une image est convertie en Base64, le résultat est une chaîne de lettres latines, de chiffres et de deux caractères – « + » et « / ». Les navigateurs peuvent interpréter ces données codées sans problème. En d’autres termes, Base64 est un codage binaire en texte qui peut être intégré dans divers formats tels que JSON, XML, URI de données ou CSS.

Base64 est largement utilisé pour intégrer des images ou d’autres ressources binaires directement dans des fichiers HTML ou CSS. Cela élimine le besoin de requêtes Web supplémentaires puisque l’image est déjà incluse dans le document HTML. Cependant, Base64 est mieux adapté aux petites images; les grandes images codées en Base64 peuvent gonfler le HTML, entraînant un ralentissement des performances. Il convient également de noter que Google n’indexera jamais une image Base64 car elle n’apparaît pas dans les recherches d’images.


Convertir une image en Base64 en ligne

Encodez des images avec l’API Aspose.SVG pour .NET en temps réel ! Veuillez charger une image à partir du système de fichiers local et vous obtiendrez immédiatement le résultat sous forme d’URI de données, de source d’image Base64 et de source d’arrière-plan CSS Base64. SVG, JPG, JPEG, PJP, PJPEG, PNG, BMP, XBM, GIF, TIFF, ICO, IFIF, WEBP et d’autres formats d’image sont pris en charge.



Convertir une image en Base64 en Python

Cet article explique comment encoder un fichier image en chaîne Base64 à l'aide d'Aspose.SVG for Python via .NET. L'exemple Python suivant montre comment convertir une image SVG en chaîne Base64 et l'intégrer dans un fichier SVG.

Code Python pour convertir l'image SVG en Base64

import base64
from aspose.svg import SVGDocument


document_path = "image.svg"

# Open an SVG image
with open(document_path, "rb") as file:
    bytes_data = file.read()

# Initialize an SVGDocument object
document = SVGDocument()

# Create an image element
img_element = document.create_element_ns("http://www.w3.org/2000/svg", "image")

# Convert SVG image to Base64 and set the href attribute
encoded_image = f"data:image/svg+xml;charset=utf-8;base64,{base64.b64encode(bytes_data).decode('utf-8')}"
img_element.set_attribute("href", encoded_image)

# Add the image element to the SVG document
document.document_element.append_child(img_element)

# Save the SVG document
document.save("image-base64.svg")

Le fragment du fichier image-base64.svg résultant est présenté ci-dessous. La chaîne Base64 a été coupée pour ne pas encombrer l'exemple de code SVG. Le format pour intégrer l'image Base64 en tant que données URI est le suivant, pour être précis:

data:[<mime type>][;charset=<charset>][;base64],<encoded data>

Code SVG pour intégrer l'image Base64

<svg xmlns="http://www.w3.org/2000/svg">
	<image href="data:image/svg+xml;charset=utf-8;base64,PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ..." alt="Alt text for the image"/>
</svg>



Incorporer une image Base64 dans HTML

Pourquoi convertir une image en Base64 ? Les images encodées en Base64 peuvent être intégrées directement dans HTML à l’aide de la balise <img> en insérant les données de l’image en tant qu’URI de données. Cette méthode réduit le nombre de requêtes HTTP dont un navigateur a besoin pour charger une page Web, améliorant ainsi les performances. L’extrait de code suivant montre comment intégrer des images Base64 dans HTML.

Code HTML pour intégrer l'image Base64 en tant qu'URI de données

<body>
    <div>
        <img src="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ..." alt="Alt text for the image">
    </div>
</body>

L’URI des données se compose de deux parties séparées par une virgule. La première partie spécifie l’en-tête du schéma d’URI de données pour l’image codée en Base64, et la deuxième partie définit la chaîne d’image codée en Base64 elle-même:

  1. data:image/svg+xml;base64, est l’en-tête du schéma d’URI de données.
  2. PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ... sont les données codées en Base64.



Intégrer une image Base64 dans le code CSS

Une autre façon de réduire le nombre de requêtes HTTP pour les images consiste à utiliser la propriété CSS background-image. Cette propriété définit les images comme arrière-plan d’un élément et vous pouvez spécifier chaque image sous forme d’URL ou d’URI de données d’image. Avec une URL, le navigateur envoie une requête HTTP pour obtenir l’image externe, mais avec une image Base64 intégrée comme URI de données, l’image est directement incluse dans le document. Cela signifie que le navigateur n’a pas besoin d’effectuer de requêtes HTTP supplémentaires, ce qui accélère les temps de chargement des pages.

Code CSS pour intégrer l'image Base64 en tant qu'URI de données

body {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ...");
}



Incorporer une image Base64 dans XML

Le codage des images en Base64 pour l’intégration dans XML simplifie l’intégration et améliore la portabilité en permettant aux images d’être incluses directement dans ce format, réduisant ainsi le besoin de références de fichiers externes.

Code XML avec image SVG Base64 intégrée

<?xml version="1.0" encoding="UTF-8"?>
<root>
<image mime = "image/svg+xml">PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ...</image>
</root>



Intégrer une image Base64 dans JSON

Convertir une image en Base64 et l’enregistrer au format JSON est utile pour l’intégrer dans des pages Web ou des applications sans requêtes HTTP supplémentaires.

Code JSON avec image Base64 intégrée

{
  "image": {
    "mime": "image/png",
    "data": "PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ..."
  }
}

Encodeurs Base64 en ligne

Les Encodeurs Base64 en ligne convertissent le contenu des documents SVG ou des fichiers image en sa représentation sous forme de chaîne équivalente codée avec des caractères ASCII. Ils fournissent également des exemples d’URI de données, JSON, XML et autres. Les outils d’encodage vous aident à éviter divers problèmes d’encodage de données qui rendent le contenu du site Web ou les messages électroniques illisibles. Les encodeurs Base64 sont sécurisés, faciles à utiliser et entièrement gratuits. Ils fonctionnent dans n’importe quel navigateur et sur n’importe quel système d’exploitation. Convertissez une image en Base64 gratuitement dès maintenant!

Premiers pas avec l'API Python

Si vous souhaitez développer des graphiques vectoriels évolutifs et leurs applications, installez notre Aspose.SVG for Python via .NET API flexible et rapide. pip est le moyen le plus simple de télécharger et d’installer Aspose.SVG for Python via .NET API. Pour ce faire, exécutez la commande suivante:

pip install aspose-svg-net

Pour plus de détails sur l’installation de la bibliothèque Python et la configuration système requise, veuillez vous référer à la Documentation Aspose.SVG.

Autres encodeurs pris en charge

Vous pouvez encoder l’image en Base64 – les formats JPG, PNG, BMP, GIF, TIFF, ICO et SVG sont pris en charge:

  • PNG to Base64
  • JPG to Base64
  • PNG to XML
  • JPG to XML