C#/VB.NET: Converti Word in Immagini (JPG, PNG e SVG)

2023-07-17 02:04:57

Rispetto al formato di documento Word, le immagini sono più convenienti da condividere e visualizzare in anteprima su più piattaforme, perché non richiedono l'installazione di MS Word sui computer. Inoltre, la conversione di Word in immagini può preservare l'aspetto originale del documento, utile quando non si desiderano ulteriori modifiche. In questo articolo imparerai come convertire documenti Word in immagini in C# e VB.NET utilizzando Spire.Doc for .NET.

Installa Spire.Doc for .NET

Per cominciare, è necessario aggiungere i file DLL inclusi nel pacchetto Spire.Doc for.NET come riferimenti nel progetto .NET. I file DLL possono essere scaricati da questo link o installato tramite NuGet.

PM> Install-Package Spire.Doc

Converti Word in JPG in C#, VB.NET

Spire.Doc for .NET offre il metodo Document.SaveToImages() per convertire un intero documento Word in singole immagini Bitmap o Metafile. Quindi, un'immagine Bitmap o Metafile può essere salvata come file in formato BMP, EMF, JPEG, PNG, GIF o WMF. Di seguito sono riportati i passaggi per convertire un documento Word in immagini JPG utilizzando questa libreria.

  • Creare un oggetto documento.
  • Carica un documento Word usando il metodo Document.LoadFromFile().
  • Converti il documento in immagini bitmap utilizzando il metodo Document.SaveToImages().
  • Passa attraverso la raccolta di immagini per ottenere quella specifica e salvala come file JPG.
  • C#
  • VB.NET
using Spire.Doc;
    using Spire.Doc.Documents;
    using System;
    using System.Drawing;
    using System.Drawing.Imaging;
    
    namespace ConvertWordToJPG
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document doc = new Document();
    
                //Load a Word document
                doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Template.docx");
    
                //Convert the whole document into individual images
                Image[] images = doc.SaveToImages(ImageType.Bitmap);
    
                //Loop through the image collection
                for (int i = 0; i < images.Length; i++)
                {
                    //Save the image to a JPEG format file
                    string outputfile = String.Format("‪Image-{0}.jpg", i);‬‬
                    images[i].Save("C:\\Users\\Administrator\\Desktop\\Images\\" + outputfile, ImageFormat.Jpeg);
                }
            }
        }
    }

Converti Word in SVG in C#, VB.NET

Utilizzando Spire.Doc for .NET, puoi salvare un documento Word come una coda di array di byte. Ogni array di byte può quindi essere scritto come file SVG. I passaggi dettagliati per convertire Word in SVG sono i seguenti.

  • Creare un oggetto documento.
  • Carica un file Word usando il metodo Document.LoadFromFile().
  • Salvare il documento come una coda di array di byte utilizzando il metodo Document.SaveToSVG().
  • Passa in rassegna gli elementi nella coda per ottenere un array di byte specifico.
  • Scrivi l'array di byte in un file SVG.
  • C#
  • VB.NET
using Spire.Doc;
    using System;
    using System.Collections.Generic;
    using System.IO;
    
    namespace CovnertWordToSVG
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document doc = new Document();
    
                //Load a Word document
                doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Template.docx");
    
                //Save the document as a queue of byte arrays
                Queue<byte[]> svgBytes = doc.SaveToSVG();
    
                //Loop through the items in the queue
                for (int i = 0; i < svgBytes.Count; i++)
                {
                    //Convert the queue to an array
                    byte[][] bytes = svgBytes.ToArray();
    
                    //Specify the output file name
                    string outputfile = String.Format("‪Image-{0}.svg", i);‬‬
    
                    //Write the byte[] in a SVG format file
                    FileStream fs = new FileStream("C:\\Users\\Administrator\\Desktop\\Images\\" + outputfile, FileMode.Create);
                    fs.Write(bytes[i], 0, bytes[i].Length);
                    fs.Close();
                }
            }
        }
    }

Converti Word in PNG con risoluzione personalizzata in C#, VB.NET

Un'immagine con una risoluzione maggiore è generalmente più chiara. È possibile personalizzare la risoluzione dell'immagine durante la conversione di Word in PNG seguendo i passaggi seguenti.

  • Creare un oggetto documento.
  • Carica un file Word usando il metodo Document.LoadFromFile().
  • Converti il documento in immagini bitmap utilizzando il metodo Document.SaveToImages().
  • Passa attraverso la raccolta di immagini per ottenere quella specifica.
  • Chiama il metodo personalizzato ResetResolution() per reimpostare la risoluzione dell'immagine.
  • Salva l'immagine come file PNG.
  • C#
  • VB.NET
using Spire.Doc;
    using System;
    using System.Drawing;
    using System.Drawing.Imaging;
    using Spire.Doc.Documents;
    
    namespace ConvertWordToPng
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Create a Document object
                Document doc = new Document();
    
                //Load a Word document
                doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Template.docx");
    
                //Convert the whole document into individual images
                Image[] images = doc.SaveToImages(ImageType.Metafile);
    
                //Loop through the image collection
                for (int i = 0; i < images.Length; i++)
                {
                    //Reset the resolution of a specific image
                    Image newimage = ResetResolution(images[i] as Metafile, 150);
    
                    //Save the image to a PNG format file
                    string outputfile = String.Format("‪Image-{0}.png", i);‬‬
                    newimage.Save("C:\\Users\\Administrator\\Desktop\\Images\\" + outputfile, ImageFormat.Png);
                }
            }
    
            //Set the image resolution by the ResetResolution() method
            public static Image ResetResolution(Metafile mf, float resolution)
            {
                int width = (int)(mf.Width * resolution / mf.HorizontalResolution);
                int height = (int)(mf.Height * resolution / mf.VerticalResolution);
                Bitmap bmp = new Bitmap(width, height);
                bmp.SetResolution(resolution, resolution);
                using (Graphics g = Graphics.FromImage(bmp))
                {
                    g.DrawImage(mf, Point.Empty);
                }
                return bmp;
            }
        }
    }

C#/VB.NET: Convert Word to Images (JPG, PNG and SVG)

Richiedi una licenza temporanea

Se desideri rimuovere il messaggio di valutazione dai documenti generati o eliminare le limitazioni delle funzioni, per favore richiedere una licenza di prova di 30 giorni per te.

Guarda anche