C# MS Office 없이 Excel을 이미지(JPG, PNG, BMP, EMF, SVG)로 변환

2024-01-29 09:42:35

Excel 파일을 다른 사람과 공유하는 것은 여러 가지 이유로 인해 때때로 불편할 수 있습니다. 예를 들어 수신자의 장치에 Excel이 설치되어 있지 않거나 Excel과 호환되지 않는 다른 운영 체제를 사용하고 있을 수 있습니다. 이로 인해 호환성 문제가 발생하고 공유 파일에 액세스하고 보는 데 어려움이 있을 수 있습니다. 또한 Excel 파일은 크기가 클 수 있으므로 크기 제한이 있는 이메일이나 기타 파일 공유 플랫폼을 통해 보내기가 어렵습니다.

Excel을 이미지로 변환하면 데이터를 표시하는 간단하고 시각적으로 매력적인 방법을 제공하여 이러한 문제를 해결합니다. 이미지를 사용하면 단일 스냅샷에 데이터의 본질을 포착할 수 있어 수신자가 한눈에 정보를 더 쉽게 파악할 수 있습니다. 차트, 그래프, 표 등 Excel을 이미지로 변환하면 복잡한 데이터를 시각적으로 매력적인 형식으로 변환할 수 있습니다.

이번 블로그에서는 방법을 자세히 설명하겠습니다 C#을 사용하여 Excel을 JPG, PNG, BMP, EMF, SVG 등 다양한 이미지 형식으로 변환.

Excel을 이미지로 변환하는 C# 라이브러리

C#을 사용하여 Excel을 이미지로 변환하려면 Microsoft Office에 의존하지 않고 .NET 애플리케이션에서 Excel 파일 생성, 읽기, 쓰기, 인쇄 및 변환을 지원하는 전문 Excel API인 Spire.XLS for .NET을 사용할 수 있습니다.

Spire.XLS for .NET를 설치하려면 NuGet 패키지 관리자 콘솔에서 다음 명령을 실행할 수 있습니다.

Install-Package Spire.XLS

C#에서 Excel 워크시트를 JPG, PNG 및 BMP 이미지로 변환

JPG, PNG 및 BMP는 디지털 이미지를 저장하고 표시하는 데 사용되는 널리 사용되는 이미지 파일 형식입니다. 각 형식에 대한 간략한 설명은 다음과 같습니다.

JPG(또는 JPEG):

JPG(또는 JPEG)는 효율적인 압축 알고리즘으로 널리 사용되는 이미지 형식입니다. 사진이나 다양한 색상이 포함된 복잡한 이미지를 저장하는 데 일반적으로 사용됩니다.

PNG(이동식 네트워크 그래픽):

PNG는 GIF(Graphics Interchange Format)를 대체하기 위해 설계된 무손실 이미지 형식입니다. 투명도와 다양한 색상으로 고품질 이미지를 지원합니다. PNG 파일은 그래픽, 로고, 날카로운 모서리나 텍스트가 있는 이미지에 자주 사용됩니다.

BMP(비트맵):

BMP는 그래픽을 압축되지 않은 형태로 저장하는 기본 이미지 형식입니다. 이는 Microsoft에서 개발했으며 정밀한 픽셀 수준 제어가 필요하거나 이전 소프트웨어 또는 시스템과의 호환성이 필요할 때 자주 사용됩니다.

다음은 C# 및 C#을 사용하여 Excel 워크시트를 JPG, PNG 및 BMP 이미지로 변환하는 방법을 보여주는 코드 예제입니다 Spire.XLS for .NET:

  • Python
using Spire.Xls;
    using System.Drawing.Imaging;
    
    namespace ConvertExcelToImage
    {
        internal class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook workbook = new Workbook();
                //Open an Excel file
                workbook.LoadFromFile("Sample.xlsx");
    
                //Get the first worksheet
                Worksheet worksheet = workbook.Worksheets[0];
    
                //Save the worksheet to JPEG, PNG, and BMP images
                worksheet.SaveToImage("Output//SheetToJPEG.jpeg", ImageFormat.Jpeg);
                worksheet.SaveToImage("Output//SheetToPNG.png", ImageFormat.Png);
                worksheet.SaveToImage("Output//SheetToBMP.bmp", ImageFormat.Bmp);
    
                workbook.Dispose();
            }
        }
    }

C# Convert Excel to Images (JPG, PNG, BMP, EMF, SVG) without MS Office

Excel 워크시트를 C#에서 EMF 이미지로 변환

EMF는 원본 워크시트의 확장성과 고품질 해상도를 유지하는 벡터 기반 이미지 형식입니다. Excel을 EMF로 변환하면 호환 소프트웨어를 사용하여 이미지를 추가로 편집하고 조작할 수 있으므로 전문적인 그래픽 및 디자인 목적에 적합합니다.

다음은 C#을 사용하여 Excel 워크시트를 EMF 이미지로 변환하는 방법을 보여주는 코드 예제입니다 Spire.XLS for .NET:

  • Python
using Spire.Xls;
    using System.Drawing;
    using System.Drawing.Imaging;
    using System.IO;
    
    namespace ConvertExcelToEMF
    {
        internal class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object and load the Excel file
                Workbook workbook = new Workbook();
                workbook.LoadFromFile("Sample.xlsx");
    
                //Get the first worksheet
                Worksheet worksheet = workbook.Worksheets[0];
    
                //Create a memory stream
                using (MemoryStream stream = new MemoryStream())
                {
                    //Save the worksheet to the memory stream as EMF
                    worksheet.ToEMFStream(stream, worksheet.FirstRow, worksheet.FirstColumn, worksheet.LastRow, worksheet.LastColumn, EmfType.EmfPlusDual);
    
                    //Create an Image object from the memory stream
                    using (Image img = Image.FromStream(stream))
                    {
                        //Save the image as an EMF file
                        img.Save("Output//SheetToEMF.emf", ImageFormat.Emf);
                    }
                }
    
                workbook.Dispose();
            }
        }
    }

C# Convert Excel to Images (JPG, PNG, BMP, EMF, SVG) without MS Office

Excel 워크시트를 C#의 SVG 이미지로 변환

SVG는 상호 작용을 지원하고 품질 저하 없이 확장할 수 있는 XML 기반 벡터 이미지 형식입니다. Excel을 SVG로 변환하면 워크시트를 동적으로 반응적으로 렌더링할 수 있으므로 웹 응용 프로그램, 데이터 시각화 및 반응형 디자인 작업 흐름에 이상적입니다.

다음은 C#을 사용하여 Excel 워크시트를 SVG 이미지로 변환하는 방법을 보여주는 코드 예제입니다 Spire.XLS for .NET:

  • Python
using Spire.Xls;
    using System.IO;
    
    namespace ConvertExcelToSVG
    {
        internal class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook workbook = new Workbook();
                //Open an Excel file
                workbook.LoadFromFile("Sample.xlsx");
    
                //Get the first worksheet
                Worksheet worksheet = workbook.Worksheets[0];
    
                //Save the worksheet to SVG
                using (FileStream fs = new FileStream("Output//SheetToSVG.svg", FileMode.Create))
                {
                    
                    worksheet.ToSVGStream(fs, worksheet.FirstRow, worksheet.FirstColumn, worksheet.LastRow, worksheet.LastColumn);
                }
    
                workbook.Dispose();
            }
        }
    }

C# Convert Excel to Images (JPG, PNG, BMP, EMF, SVG) without MS Office

C#에서 Excel 워크시트를 특정 해상도의 이미지로 변환

Excel 워크시트를 이미지로 변환할 때 Spire.XLS for .NET는 이미지 해상도를 지정하는 직접적인 방법을 제공하지 않습니다. 그러나 다음의 방법을 사용할 수 있습니다 비트맵그래픽 클래스를 사용하면 결과 이미지의 해상도를 쉽게 조정할 수 있습니다.

다음은 C#을 사용하여 Excel 워크시트를 특정 해상도의 이미지로 변환하는 방법을 보여주는 코드 예제입니 Spire.XLS for .NET:

  • Python
using Spire.Xls;
    using System.Drawing;
    using System.Drawing.Imaging;
    using System.IO;
    
    namespace ConvertExcelToImageWithCustomResolution
    {
        internal class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook workbook = new Workbook();
                //Open an Excel file
                workbook.LoadFromFile("Sample.xlsx");
    
                //Get the first worksheet
                Worksheet worksheet = workbook.Worksheets[0];
    
                //Convert the worksheet to EMF stream
                using (MemoryStream ms = new MemoryStream())
                {
                    worksheet.ToEMFStream(ms, 1, 1, worksheet.LastRow, worksheet.LastColumn);
    
                    //Create an image from the EMF stream
                    Image image = Image.FromStream(ms);
                    //Call the ResetResolution() method to change the resolution of the image
                    Bitmap images = ResetResolution(image as Metafile, 300);
    
                    //Save the image in JPG file format
                    images.Save("Output//SheetToImageWithCustomResolution.jpg", ImageFormat.Jpeg);
                }
    
                workbook.Dispose();
            }
    
            //Create a custom method to change image resolution
            private static Bitmap 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);
                Graphics g = Graphics.FromImage(bmp);
                g.DrawImage(mf, 0, 0);
                g.Dispose();
                return bmp;
            }
        }
    }

C# Convert Excel to Images (JPG, PNG, BMP, EMF, SVG) without MS Office

C#에서 Excel 워크시트를 흰색 여백이 없는 이미지로 변환

Excel 워크시트를 흰색 여백이 없는 이미지로 변환하면 불필요한 공백을 제거하고 스프레드시트 내용에 집중하는 데 유용합니다. 흰색 여백을 제거하면 결과 이미지에 Excel 파일의 실제 데이터와 시각적 요소만 포함되어 시각적으로 더욱 매력적이고 특정 사용 사례에 적합해집니다.

다음은 C#을 사용하여 Excel 워크시트를 흰색 여백이 없는 이미지로 변환하는 방법을 보여주는 코드 예제입니다 Spire.XLS for .NET:

  • Python
using Spire.Xls;
    using System.Drawing.Imaging;
    
    namespace ConvertExcelToImage
    {
        internal class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook workbook = new Workbook();
                //Open an Excel file
                workbook.LoadFromFile("Sample.xlsx");
    
                //Get the first worksheet
                Worksheet worksheet = workbook.Worksheets[0];
    
                //Set the margin of the worksheet to 0
                worksheet.PageSetup.LeftMargin = 0;
                worksheet.PageSetup.BottomMargin = 0;
                worksheet.PageSetup.TopMargin = 0;
                worksheet.PageSetup.RightMargin = 0;
    
                //Save the worksheet to an image
                worksheet.SaveToImage("Output//SheetToImageWithoutMargins.png", ImageFormat.Png);
    
                workbook.Dispose();
            }
        }
    }

C# Convert Excel to Images (JPG, PNG, BMP, EMF, SVG) without MS Office

Excel 워크시트의 특정 셀 범위를 C#의 이미지로 변환

전체 워크시트를 이미지로 변환하는 것 외에도 Spire.XLS for .NET을 사용하면 특정 셀 범위를 이미지로 변환할 수 있습니다. 이는 워크시트 내에서 데이터의 일부를 공유하거나 표시하는 데 유용할 수 있습니다.

다음은 C#을 사용하여 Excel 워크시트의 특정 셀 범위를 이미지로 변환하는 방법을 보여주는 코드 예제입니다 Spire.XLS for .NET:

  • Python
using Spire.Xls;
    using System.IO;
    
    namespace ConvertCellRangeToImage
    {
        internal class Program
        {
            static void Main(string[] args)
            {
                //Create a Workbook object
                Workbook workbook = new Workbook();
                //Open an Excel file
                workbook.LoadFromFile("Sample.xlsx");
    
                //Get the first worksheet
                Worksheet worksheet = workbook.Worksheets[0];
                
                //Save a specific range of cells within the worksheet to an image
                worksheet.ToImage(5, 1, 16, 5).Save("Output//CellRangeToImage.png");
    
                workbook.Dispose();
            }
        }
    }

C# Convert Excel to Images (JPG, PNG, BMP, EMF, SVG) without MS Office

무료 라이센스 받기

평가 제한 없이 Spire.XLS for .NET의 기능을 완전히 경험하려면 다음을 요청할 수 있습니다 30일 무료 평가판 라이센스.

결론

이 블로그에서는 Spire.XLS for .NET을 사용하여 Excel 워크시트를 이미지로 변환하는 방법에 대한 포괄적인 개요를 제공합니다. 그러나 Spire.XLS는 Excel 파일을 이미지 이외의 다양한 파일 형식으로 변환하는 기능을 지원한다는 점을 강조하는 것이 중요합니다. 이러한 추가 변환 옵션에는 Excel에서 PDF로, Excel에서 HTML로L, Excel에서 텍스트로, Excel에서 XPS로 등이 포함됩니다.

또한보십시오