Convertir EPUB en JPG en C#
Les fichiers JPG peuvent contenir des données d’image de haute qualité avec une compression sans perte. Cette fonction de compression unique permet de partager rapidement et efficacement des images JPG et de les utiliser largement sur le Web, les ordinateurs et les appareils mobiles. Avec Aspose.HTML for .NET, vous pouvez convertir EPUB au format JPG de manière programmatique en contrôlant totalement un large éventail de paramètres de conversion.
Dans cet article, vous trouverez des informations sur la manière de convertir EPUB en JPG à l’aide des méthodes ConvertEPUB() de la classe Converter, et sur la manière d’appliquer les paramètres ImageSaveOptions et ICreateStreamProvider.
Convertisseur EPUB en ligne
Vous pouvez convertir l’EPUB en d’autres formats avec l’API Aspose.HTML for .NET en temps réel. Commencez par charger un fichier EPUB sur votre disque local, puis exécutez l’exemple. Les options d’enregistrement de l’exemple sont définies par défaut. Vous recevrez immédiatement le résultat de la conversion dans un fichier séparé.
Si vous souhaitez convertir un EPUB en JPG par programme, veuillez consulter les exemples de code C# suivants.
EPUB à JPG en deux lignes de code
Les méthodes statiques de la classe Converter sont principalement utilisées comme moyen le plus simple de convertir un fichier EPUB dans différents formats. Vous pouvez convertir un EPUB en JPG dans votre application C# en deux lignes de code !
1// Convert EPUB to JPG using C#
2
3// Open an existing EPUB file for reading
4using FileStream stream = File.OpenRead(DataDir + "input.epub");
5
6// Invoke the ConvertEPUB() method to convert EPUB to JPG
7Converter.ConvertEPUB(stream, new ImageSaveOptions(ImageFormat.Jpeg), Path.Combine(OutputDir, "convert-by-two-lines.jpg"));
Convertir EPUB en JPG
Pour convertir un EPUB en JPG, vous devez suivre quelques étapes :
- Ouvrir un fichier EPUB existant. Dans l’exemple, nous utilisons la méthode OpenRead() de la classe System.IO.FileStream pour ouvrir et lire un fichier EPUB à partir du système de fichiers au chemin spécifié.
- Créez un nouvel objet
ImageSaveOptions avec
ImageFormat.Jpeg
. Par défaut, la propriété Format est PNG. - Utilisez la méthode ConvertEPUB() de la classe Converter pour enregistrer l’EPUB en tant qu’image JPG. Vous devez transmettre le flux du fichier EPUB, les ImageSaveOptions et le chemin du fichier de sortie à la méthode ConvertEPUB() pour la conversion de l’EPUB en JPG.
Jetez un coup d’œil à l’extrait de code C# suivant, qui illustre le processus de conversion d’EPUB en JPG à l’aide d’Aspose.HTML for .NET.
1// Convert EPUB to JPG using C#
2
3// Open an existing EPUB file for reading
4using FileStream stream = File.OpenRead(DataDir + "input.epub");
5
6// Prepare a path to save the converted file
7string savePath = Path.Combine(OutputDir, "input-output.jpg");
8
9// Create an instance of the ImageSaveOptions class
10ImageSaveOptions options = new ImageSaveOptions(ImageFormat.Jpeg);
11
12// Call the ConvertEPUB() method to convert EPUB to JPG
13Converter.ConvertEPUB(stream, options, savePath);
Vous pouvez télécharger les exemples complets et les fichiers de données sur GitHub.
Options d’enregistrement – Classe ImageSaveOptions
Aspose.HTML for .NET permet de convertir un EPUB en JPG en utilisant des options d’enregistrement par défaut ou personnalisées. l’utilisation de ImageSaveOptions vous permet de régler le processus de rendu. Vous pouvez spécifier le image format, la page size, les margins, le CSS media-type, etc.
Property | Description |
---|---|
Compression | Sets Tagged Image File Format (TIFF) Compression. By default, this property is LZW. |
CSS | Gets a CssOptions object which is used for configuration of CSS properties processing. |
Format | Sets the ImageFormat (JPG, PNG, BMP, TIFF, or GIF). By default, this property is PNG. |
BackgroundColor | This property sets the color that will fill the background. By default, this property is Transparent. |
PageSetup | This property gets a page setup object and uses it for configuration output page-set. |
HorizontalResolution | Sets horizontal resolution for output images in pixels per inch. The default value is 300 dpi. |
VerticalResolution | Sets vertical resolution for output images in pixels per inch. The default value is 300 dpi. |
UseAntialiasing | This property sets the image rendering quality. Antialiasing is enabled by default. |
Text | Gets a TextOptions object which is used for configuration of text rendering. |
Pour en savoir plus sur la classe ImageSaveOptions, veuillez lire l’article Convertisseurs à réglage fin.
Convertir EPUB en JPG en utilisant ImageSaveOptions
Pour convertir un EPUB en JPG en spécifiant ImageSaveOptions, vous devez suivre quelques étapes :
- Ouvrir un fichier EPUB existant.
- Créez un nouvel objet ImageSaveOptions avec le format d’image JPG et spécifiez les options d’enregistrement. Par défaut, la propriété Format est PNG.
- Utilisez la méthode ConvertEPUB() de la classe Converter pour enregistrer l’EPUB en tant qu’image JPG. Vous devez transmettre le flux du fichier EPUB, les ImageSaveOptions et le chemin du fichier de sortie à la méthode ConvertEPUB() pour convertir l’EPUB en JPG.
L’extrait de code C# suivant montre comment convertir un EPUB en JPG à l’aide d’options d’enregistrement personnalisées :
1// Convert EPUB to JPG using C# with custom settings
2
3// Open an existing EPUB file for reading
4using FileStream stream = File.OpenRead(DataDir + "input.epub");
5
6// Prepare a path to save the converted file
7string savePath = Path.Combine(OutputDir, "input-options.jpg");
8
9// Initialize ImageSaveOptions
10ImageSaveOptions options = new ImageSaveOptions(ImageFormat.Jpeg)
11{
12 UseAntialiasing = true,
13 HorizontalResolution = 400,
14 VerticalResolution = 400,
15 BackgroundColor = System.Drawing.Color.AliceBlue
16};
17options.PageSetup.AnyPage = new Page(new Aspose.Html.Drawing.Size(800, 500), new Margin(30, 20, 10, 10));
18
19// Call the ConvertEPUB() method to convert EPUB to JPG
20Converter.ConvertEPUB(stream, options, savePath);
Le constructeur
ImageSaveOptions() initialise une instance de la classe ImageSaveOptions qui est passée à la méthode ConvertEPUB(). La méthode ConvertEPUB() prend le stream
, les options
, le chemin du fichier de sortie savePath
et effectue l’opération de conversion.
Dans l’exemple ci-dessus, nous utilisons :
- propriété
BackgroundColor
qui spécifie la couleur dans laquelle l’arrière-plan sera rempli. La couleur d’arrière-plan par défaut estTransparent
. - les propriétés
HorizontalResolution
etVerticalResolution
définissent la résolution horizontale/verticale des images de sortie en pixels par pouce. Par défaut, ces propriétés sont de 300 dpi. - propriété
UseAntialiasing
qui définit la qualité du rendu pour cette image. Cet exemple utiliseUseAntialiasing = true
pour un rendu de qualité. - propriété
PageSetup
qui spécifie la page size et les margins en pixels.
Utilisez UseAntialiasing = true
lorsque vous souhaitez améliorer la qualité visuelle des formes, textes et images rendus dans votre application, en particulier lorsque la clarté et les bords lisses sont essentiels. L’activation de l’anticrénelage permet de lisser les bords irréguliers en mélangeant les couleurs des pixels autour des bords, ce qui donne un aspect plus doux et plus raffiné.
Bien que UseAntialiasing = true
offre une meilleure qualité visuelle, il peut aussi augmenter le temps de traitement. Pour les applications où la vitesse de rendu est une priorité, il peut être optimal de mettre UseAntialiasing = false
.
Fournisseurs de flux de sortie
S’il est nécessaire d’enregistrer des fichiers dans un espace de stockage distant (par exemple, un nuage, une base de données, etc.), vous pouvez mettre en œuvre l’interface ICreateStreamProvider afin de contrôler manuellement le processus de création de fichiers. Cette interface est conçue comme un objet de rappel pour créer un flux au début du document/de la page (en fonction du format de sortie) et libérer le flux créé au début après le rendu du document/de la page.
Aspose.HTML for .NET propose différents types de formats de sortie pour les opérations de rendu. Certains de ces formats produisent un seul fichier de sortie (par exemple, PDF, XPS), d’autres créent plusieurs fichiers (formats d’image – JPG, PNG, etc.)
L’exemple ci-dessous montre comment mettre en œuvre et utiliser votre propre MemoryStreamProvider dans l’application :
1// Implement a custom MemoryStream provider for advanced control over HTML rendering output streams
2
3class MemoryStreamProvider : Aspose.Html.IO.ICreateStreamProvider
4{
5 // List of MemoryStream objects created during the document rendering
6 public List<MemoryStream> Streams { get; } = new List<MemoryStream>();
7
8 public Stream GetStream(string name, string extension)
9 {
10 // This method is called when only one output stream is required, for instance for XPS, PDF or TIFF formats
11 MemoryStream result = new MemoryStream();
12 Streams.Add(result);
13 return result;
14 }
15
16 public Stream GetStream(string name, string extension, int page)
17 {
18 // This method is called when the creation of multiple output streams are required. For instance, during the rendering HTML to list of image files (JPG, PNG, etc.)
19 MemoryStream result = new MemoryStream();
20 Streams.Add(result);
21 return result;
22 }
23
24 public void ReleaseStream(Stream stream)
25 {
26 // Here you can release the stream filled with data and, for instance, flush it to the hard-drive
27 }
28
29 public void Dispose()
30 {
31 // Releasing resources
32 foreach (MemoryStream stream in Streams)
33 stream.Dispose();
34 }
35}
L’extrait de code suivant montre comment convertir un fichier EPUB en fichier JPG à l’aide d’un flux de mémoire.
1// Convert EPUB to JPG in C# using memory stream
2
3// Open an existing EPUB file for reading
4using FileStream stream = File.OpenRead(DataDir + "input.epub");
5
6// Create an instance of MemoryStreamProvider
7using MemoryStreamProvider streamProvider = new MemoryStreamProvider();
8
9// Convert HTML to JPG using the MemoryStreamProvider
10Converter.ConvertEPUB(stream, new ImageSaveOptions(ImageFormat.Jpeg), streamProvider);
11
12// Get access to the memory streams that contain the resulted data
13for (int i = 0; i < streamProvider.Streams.Count; i++)
14{
15 MemoryStream memory = streamProvider.Streams[i];
16 memory.Seek(0, System.IO.SeekOrigin.Begin);
17
18 // Flush the page to the output file
19 using (FileStream fs = File.Create(Path.Combine(OutputDir, $"input-page_{i + 1}.jpg")))
20 {
21 memory.CopyTo(fs);
22 }
23}
La méthode
ConvertEPUB(Stream
, ImageSaveOptions
, ICreateStreamProvider
) prend la source de conversion, les options et l’instance de MemoryStreamProvider, qui sera utilisée pour obtenir un flux de sortie, et effectue l’opération de conversion.
Aspose.HTML propose un Convertisseur EPUB en JPG gratuit en ligne qui convertit les EPUB en images JPG de haute qualité, facilement et rapidement. Il suffit de télécharger, de convertir vos fichiers et d’obtenir des résultats en quelques secondes !