Изменение размера EPS | Решение .NET API

Обзор

В этой статье объясняется, как изменить размер EPS с помощью C#. Он охватывает следующие темы.

C# Изменение размера EPS Описание

Изменение размера изображения — это операция, которая изменяет один или оба размера изображения: ширину и высоту. Содержимое изображения остается прежним, но само изображение можно масштабировать в зависимости от новых значений ширины и высоты. Если с и высота пропорционально увеличены, изображение EPS будет увеличено, в противном случае оно будет уменьшено. Если ширина и высота изменяются непропорционально, результирующее изображение EPS-изображения будет сжато или удлинено в некотором направлении. Объем файла EPS останется практически неизменным, поскольку наше решение не работает с содержимым, а работает с заголовком и разделом настройки файла EPS.

Чтобы настроить новый размер для представления изображения EPS, часто необходимо знать его существующий размер и выбрать единицы измерения, в которых будет присвоен новый размер. Это могут быть пункты (1/72 дюйма), дюймы, миллиметры, сантиметры и проценты. Итак, шаги по изменению размера изображения EPS в C# следующие:

  1. Инициализируйте объект PsDocument входным потоком, содержащим файл EPS.
  2. Извлеките существующий размер изображения с помощью статического метода ExtractEpsSize.
  3. Создайте выходной поток для результирующего файла EPS.
  4. Измените размер объекта PsDocument, указав новый размер в выбранных Единицах. статическим методом ResizeEps.

Вы можете проверить качество Aspose.Page EPS Resize и просмотреть результаты с помощью бесплатного онлайн-сервиса Resize EPS, а затем просмотреть полученный файл EPS с помощью нашего EPS Viewer

Изменение размера EPS, установка нового размера в точках на C#

В следующем фрагменте кода C# новый размер изображения задается в пунктах (1/72 дюйма):

 1// For complete examples and data files, please go to https://github.com/aspose-page/Aspose.Page-for-.NET
 2
 3// The path to the documents directory.
 4string dataDir = GetDataDir();
 5
 6 
 7//Initialize PsDocument object with EPS file
 8PsDocument doc = new PsDocument(dataDir + "input.eps");
 9
10//Get size of EPS image
11Size oldSize = doc.ExtractEpsSize();
12
13//Create an output stream for resized EPS
14using (Stream outputEpsStream = new System.IO.FileStream(dataDir + "output_resize_inches.eps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
15{
16    //Save EPS to the output stream with new size assigned in inches
17    doc.ResizeEps(outputEpsStream, new SizeF(oldSize.Width * 2, oldSize.Height * 2), Units.Points);
18}

Для Linux, MacOS и других операционных систем, отличных от Windows, мы предлагаем использовать наш пакет Nuget Aspose.Page.Drawing. Он использует серверную часть Aspose.Drawing вместо системной библиотеки System.Drawing.

Поэтому импортируйте пространство имен Aspose.Page.Drawing вместо System.Drawing. В приведенных выше и последующих фрагментах кода вместо System.Drawing.Size будет использоваться Aspose.Page.Drawing.Size. Наши примеры кода на GitHub содержат все необходимые замены.

Изменение размера EPS, установка нового размера в дюймах на C#

В следующем фрагменте кода C# новый размер изображения задается в дюймах:

 1// For complete examples and data files, please go to https://github.com/aspose-page/Aspose.Page-for-.NET
 2
 3// The path to the documents directory.
 4string dataDir = GetDataDir();
 5
 6 //Create an input stream for EPS file
 7using (Stream inputEpsStream = new System.IO.FileStream(dataDir + "input.eps", System.IO.FileMode.Open, System.IO.FileAccess.Read))
 8{
 9    //Initialize PsDocument object with input stream
10    PsDocument doc = new PsDocument(inputEpsStream);
11
12    //Get size of EPS image
13    Size oldSize = doc.ExtractEpsSize();
14
15    //Create an output stream for resized EPS
16    using (Stream outputEpsStream = new System.IO.FileStream(dataDir + "output_resize_inches.eps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
17    {
18        //Save EPS to the output stream with new size assigned in inches
19        doc.ResizeEps(outputEpsStream, new SizeF(5.791f, 3.625f), Units.Inches);
20    }
21}

Изменение размера EPS, установка нового размера в миллиметрах на C#

В следующем фрагменте кода C# новый размер изображения задается в миллиметрах:

 1// For complete examples and data files, please go to https://github.com/aspose-page/Aspose.Page-for-.NET
 2
 3// The path to the documents directory.
 4string dataDir = GetDataDir();
 5
 6 //Create an input stream for EPS file
 7using (Stream inputEpsStream = new System.IO.FileStream(dataDir + "input.eps", System.IO.FileMode.Open, System.IO.FileAccess.Read))
 8{
 9    //Initialize PsDocument object with input stream
10    PsDocument doc = new PsDocument(inputEpsStream);
11
12    //Get size of EPS image
13    Size oldSize = doc.ExtractEpsSize();
14
15    //Create an output stream for resized EPS
16    using (Stream outputEpsStream = new System.IO.FileStream(dataDir + "output_resize_mms.eps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
17    {
18        //Save EPS to the output stream with new size assigned in millimeters
19        doc.ResizeEps(outputEpsStream, new SizeF(196, 123), Units.Millimeters);
20    }
21}

Изменение размера EPS, установка нового размера в процентах на C#

В следующем фрагменте кода C# новый размер изображения задается в процентах:

 1// For complete examples and data files, please go to https://github.com/aspose-page/Aspose.Page-for-.NET
 2
 3// The path to the documents directory.
 4string dataDir = GetDataDir();
 5
 6 //Create an input stream for EPS file
 7using (Stream inputEpsStream = new System.IO.FileStream(dataDir + "input.eps", System.IO.FileMode.Open, System.IO.FileAccess.Read))
 8{
 9    //Initialize PsDocument object with input stream
10    PsDocument doc = new PsDocument(inputEpsStream);
11
12    //Get size of EPS image
13    Size oldSize = doc.ExtractEpsSize();
14
15    //Create an output stream for resized EPS
16    using (Stream outputEpsStream = new System.IO.FileStream(dataDir + "output_resize_mms.eps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
17    {
18        //Save EPS to the output stream with new size assigned in percents
19        doc.ResizeEps(outputEpsStream, new SizeF(200, 200), Units.Percents);
20    }
21}

См. Изменение размера EPS в Java и C++.

Исходное изображение в формате EPS

Исходное изображение

Изменение размера EPS

Измененное изображение

Оцените изменение размера EPS онлайн в нашем веб-приложении для изменения размера EPS. Вы можете изменить размер файла EPS и загрузить результат за несколько секунд.

Вы можете скачать примеры и файлы данных с GitHub.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.