Recortar EPS | Solución API C# .NET
Descripción general
Este artículo explica cómo recortar EPS usando C#. Cubre los siguientes temas.
Descripción de EPS de recorte de C#
Recortar la imagen es una operación que cambia uno de los o varios márgenes de la imagen: izquierdo, derecho, superior e inferior. En otras palabras, corta el contenido de la imagen desde los bordes. Por lo tanto, el tamaño de la representación resultante de la imagen EPS siempre será menor que el original. El volumen del archivo no cambiará ya que nuestra solución no funciona con el contenido pero sí con el encabezado del archivo EPS.
Los márgenes de la imagen EPS están definidos por los metadatos de BoundingBox. Para recortar, o en otras palabras, configurar un nuevo cuadro delimitador, debemos conocer el cuadro delimitador existente de la imagen EPS. De lo contrario, podemos asignar los valores del nuevo cuadro delimitador fuera del cuadro delimitador existente, lo que genera un error. Entonces los pasos para recortar una imagen EPS en C# son los siguientes:
- Inicialice el objeto PsDocument con el flujo de entrada que contiene el archivo EPS.
- Extraiga el cuadro delimitador existente de la imagen utilizando el método estático ExtractEpsBoundingBox.
- Cree el flujo de salida para el archivo EPS resultante.
- Cree un nuevo cuadro delimitador.
- Recorte el objeto PsDocument con un nuevo cuadro delimitador con el método estático CropEps.
Puede comprobar la calidad de Aspose.Page EPS Crop y ver los resultados a través de Crop EPS en línea gratuito y luego ver el archivo EPS resultante con nuestra aplicación web EPS Viewer.
Recortar EPS en C#
En el siguiente fragmento de código C# obtenemos el cuadro delimitador existente de la imagen y recortamos el EPS:
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//Initialize PsDocument object with EPS file
7PsDocument doc = new PsDocument(dataDir + "input.eps");
8
9//Get initial bounding box of EPS image
10int [] initialBoundingBox = doc.ExtractEpsBoundingBox();
11
12//Create an output stream for resized EPS
13using (Stream outputEpsStream = new System.IO.FileStream(dataDir + "output_crop.eps", System.IO.FileMode.Create, System.IO.FileAccess.Write))
14{
15 //Create new bounding box
16 //Bounding box is represented by 4 numbers: x0, y0, x, y, where x0 - left margin, y0 - top margin, x - (x0 + width), y - (y0 + height)
17 float[] newBoundingBox = new float[] { 260, 300, 480, 432 };
18
19 //Crop EPS image and save to the output stream
20 //Croping of image is changing of its bounding box so that new values of bounding box will be within initial bounding box, that is
21 //initialBoundingBox[0] <= newBoundingBox[0] <= initialBoundingBox[2]
22 //initialBoundingBox[1] <= newBoundingBox[1] <= initialBoundingBox[3]
23 //initialBoundingBox[0] <= newBoundingBox[2] <= initialBoundingBox[2]
24 //initialBoundingBox[1] <= newBoundingBox[3] <= initialBoundingBox[3]
25 doc.CropEps(outputEpsStream, newBoundingBox);
26}
Imagen inicial
Imagen recortada
Evalúe el recorte de EPS en línea en nuestra aplicación web para recortar EPS. Puede recortar el archivo EPS y descargar el resultado en unos segundos.
Puede descargar ejemplos y archivos de datos desde GitHub.