Convertir EPUB en DOCX en C#

DOCX est un format bien connu pour les documents Microsoft Word. Ce format est populaire parce qu’il prend en charge un large éventail de fonctions de formatage et offre aux utilisateurs un grand nombre d’options pour rédiger n’importe quel type de document. Les fichiers DOCX peuvent être ouverts avec Word 2007 et les versions latérales, mais pas avec les versions antérieures de MS Word, qui prennent en charge les extensions de fichier DOC. La conversion d’EPUB en DOCX est souvent nécessaire pour tirer parti du format DOCX dans le cadre de tâches spécifiques.

Dans cet article, vous trouverez des informations sur la manière de convertir EPUB en DOCX en utilisant les méthodes ConvertEPUB() de la classe Converter et sur la manière d’appliquer les paramètres DocSaveOptions 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 DOCX par programme, veuillez consulter les exemples de code C# suivants.

EPUB vers DOCX 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. Par exemple, vous pouvez convertir EPUB en DOCX dans votre application C# en deux lignes de code !

1// Convert EPUB to DOCX 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 DOCX
7Converter.ConvertEPUB(stream, new DocSaveOptions(), Path.Combine(OutputDir, "convert-by-two-lines.docx"));

Convertir EPUB en DOCX

Pour convertir EPUB en DOCX, vous devez suivre quelques étapes :

  1. Ouvrir un fichier EPUB existant. Dans l’exemple, nous utilisons la méthode OpenRead() de la classe System.IO.FileStream pour ouvrir et lire des fichiers EPUB à partir du système de fichiers au chemin spécifié.
  2. Créer une instance de la classe DocSaveOptions.
  3. Utilisez la méthode ConvertEPUB() de la classe Converter pour enregistrer un EPUB en tant que fichier DOCX. Vous devez transmettre le flux du fichier EPUB, les options DocSaveOptions et le chemin du fichier de sortie à la méthode ConvertEPUB() pour la conversion d’EPUB en DOCX.

L’extrait de code C# suivant montre comment convertir un EPUB en DOCX à l’aide d’Aspose.HTML for .NET.

 1// Convert EPUB to DOCX 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.docx");
 8
 9// Create an instance of the DocSaveOptions class
10DocSaveOptions options = new DocSaveOptions();
11
12// Call the ConvertEPUB() method to convert EPUB to DOCX
13Converter.ConvertEPUB(stream, options, savePath);

Options d’enregistrement – Classe DocSaveOptions

Aspose.HTML for .NET permet de convertir des EPUB en DOCX en utilisant des options d’enregistrement par défaut ou personnalisées. l’utilisation de DocSaveOptions vous permet d’ajuster le processus de rendu ; vous pouvez spécifier la taille de la page, les marges, les résolutions, les CSS, etc.

PropertyDescription
FontEmbeddingRuleThis property gets or sets the font embedding rule. Available values are Full and None. The default value is None.
CssGets a CssOptions object which is used for configuration of CSS properties processing.
DocumentFormatThis property gets or sets the file format of the output document. The default value is DOCX.
PageSetupThis property gets a page setup object and uses it for configuration output page-set.
HorizontalResolutionSets horizontal resolution for output images in pixels per inch. The default value is 300 dpi.
VerticalResolutionSets vertical resolution for output images in pixels per inch. The default value is 300 dpi.

Pour en savoir plus sur DocSaveOptions, veuillez lire l’article Convertisseurs à réglage fin.

Conversion d’EPUB en DOCX à l’aide de DocSaveOptions

Avec Aspose.HTML for .NET, vous pouvez convertir EPUB au format DOCX de manière programmatique en contrôlant totalement un large éventail de paramètres de conversion. Pour convertir un EPUB en DOCX en spécifiant DocSaveOptions, vous devez suivre quelques étapes :

  1. Ouvrir un fichier EPUB existant.
  2. Créez un nouvel objet DocSaveOptions et spécifiez les options d’enregistrement requises.
  3. Utilisez la méthode ConvertEPUB() pour enregistrer un EPUB en tant que fichier DOCX. Vous devez transmettre le flux du fichier EPUB, les options DocSaveOptions et le chemin du fichier de sortie à la méthode ConvertEPUB() pour la conversion d’EPUB en DOCX.

L’exemple suivant montre comment utiliser DocSaveOptions et créer un fichier DOCX avec des options d’enregistrement personnalisées :

 1// Convert EPUB to DOCX with custom settings 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-options.docx");
 8
 9// Create an instance of DocSaveOptions. Set A5 as a page-size
10DocSaveOptions options = new DocSaveOptions();
11options.PageSetup.AnyPage = new Page(new Aspose.Html.Drawing.Size(Length.FromInches(8.3f), Length.FromInches(5.8f)));
12
13// Call the ConvertEPUB() method to convert EPUB to DOCX
14Converter.ConvertEPUB(stream, options, savePath);

Dans l’exemple, nous utilisons la méthode OpenRead() de la classe System.IO.FileStream pour ouvrir et lire les fichiers source à partir du système de fichiers au chemin spécifié. Le constructeur DocSaveOptions() initialise une instance de la classe DocSaveOptions qui est transmise à 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. La classe DocSaveOptions fournit de nombreuses propriétés qui vous donnent un contrôle total sur un large éventail de paramètres et améliorent le processus de conversion de l’EPUB au format DOCX. Dans l’exemple, nous utilisons la propriété PageSetup qui spécifie la taille des pages du document DOCX.

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 fournit 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 DOCX à l’aide d’un flux de mémoire.

 1// Convert EPUB to DOCX in C# using memory stream
 2
 3// Create an instance of MemoryStreamProvider
 4using MemoryStreamProvider streamProvider = new MemoryStreamProvider();
 5
 6// Open an existing EPUB file for reading
 7using FileStream stream = File.OpenRead(DataDir + "input.epub");
 8
 9// Prepare a path to save the converted file 
10string savePath = Path.Combine(OutputDir, "stream-provider.docx");
11
12// Convert EPUB to DOCX by using the MemoryStreamProvider class
13Converter.ConvertEPUB(stream, new DocSaveOptions(), streamProvider);
14
15// Get access to the memory stream that contains the result data
16MemoryStream memory = streamProvider.Streams.First();
17memory.Seek(0, SeekOrigin.Begin);
18
19// Flush the result data to the output file
20using (FileStream fs = File.Create(savePath))
21{
22    memory.CopyTo(fs);
23}

Vous pouvez télécharger les exemples complets et les fichiers de données sur GitHub.

Aspose.HTML propose un Convertisseur EPUB en DOCX gratuit en ligne qui convertit les EPUB en DOCX avec une grande qualité, facilement et rapidement. Il suffit de télécharger, de convertir vos fichiers et d’obtenir des résultats en quelques secondes !

Texte “Convertisseur EPUB en DOCX”

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.