Resize EPS | .NET API Solution
Overview
This article explains how to resize EPS using C#. It covers the following topics.
- C# Resize EPS Description
- C# Resize EPS setting new size in Points
- C# Resize EPS setting new size in Inches
- C# Resize EPS setting new size in Millimeters
- C# Resize EPS setting new size in Percents
C# Resize EPS Description
Resizing the image is an operation that changes one of the, or both, dimensions of the image: width and height. The content of the image is left the same, but the image itself can be scaled in dependence of new values of width and height. If with and height are proportionally increased the representation of EPS image will be enlarged, otherwise it will be lessened. If width and height are changed disproportionately the resulting representation of EPS image will be compressed or elangated in some direction. The volume of the EPS file will remain almost unchanged as our solution doesnt’t work with the content but works with the header and the setup section of EPS file.
To set up new size for the representation of EPS image often it is necessary to know its existing size and choise the units in which to assign new size. It can be Points (1/72 of inch), Inches, Millimeters, Centimeters and Percents. So the steps for resizing EPS image in C# follows:
- Initialize PsDocument object with an input stream containing EPS file.
- Extract existing size of the image using static method ExtractEpsSize.
- Create an output stream for resulting EPS file.
- Resize PsDocument object with new size in selected Units with static method ResizeEps.
You can check the quality of Aspose.Page EPS Resize and view the results via free online Resize EPS and then view the resulting EPS file with our EPS Viewer
Resize EPS setting new size in Points in C#
In the following C# code snippet new size of the image is set by Points (1/72 of inch):
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}
For Linux, MacOS and other non-Windows operation systems we offer to use our Aspose.Page.Drawing Nuget package. It uses Aspose.Drawing backend instead of System.Drawing system library.
So import Aspose.Page.Drawing namespace instead of System.Drawing one. In the above and following code snippets Aspose.Page.Drawing.Size will be used instead of System.Drawing.Size. Our code examples on GitHub contain all the necessary substitutions.
Resize EPS setting new size in Inches in C#
In the following C# code snippet new size of the image is set by Inches:
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}
Resize EPS setting new size in Millimeters in C#
In the following C# code snippet new size of the image is set by Millimeters:
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}
Resize EPS setting new size in Percents in C#
In the following C# code snippet new size of the image is set by Percents:
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}
Initial image
Resized image
Evaluate resizing EPS online on our Resize EPS web application. You can resize EPS file and dowload result in a few seconds.
You can download examples and data files from GitHub.