Обробка форматів Adobe Illustrator

Експортування AI-файлу в PSD

За допомогою Aspose.PSD для .NET розробники можуть конвертувати файл Adobe Illustrator у формат PSD. Ця тема пояснює підхід до завантаження існуючого файлу AI та конвертації його в PSD за допомогою класу PsdOptions.

Кроки для конвертації файлу AI в PSD настільки прості, як описано нижче:

  • Створити екземпляр AiImage і завантажити зображення за допомогою методу Load класу Image
  • Створити екземпляр класу PsdOptions
  • Викликати метод AiImage.Save з шляхом призначення та екземпляром PsdOptions

Нижче наведений приклад коду демонструє, як експортувати AI в PSD.

// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET
{
@"34992OStroke",
@"rect2_color",
};
for (int i = 0; i < sourcesFiles.Length; i++)
{
string name = sourcesFiles[i];
string sourceFileName = dataDir + name + ".ai";
string outFileName = dataDir + name + ".psd";
using (AiImage image = (AiImage)Image.Load(sourceFileName))
{
ImageOptionsBase options = new PsdOptions();
image.Save(outFileName, options);
}
}

Експортування AI-файлу в JPEG

За допомогою Aspose.PSD для .NET розробники можуть конвертувати файл Adobe Illustrator у формат JPEG. Ця тема пояснює підхід до завантаження існуючого файлу AI та конвертації його в JPEG за допомогою класу JpegOptions.

Кроки для конвертації файлу AI в JPEG настільки прості, як описано нижче:

  • Створити екземпляр AiImage та завантажити зображення за допомогою методу Load класу Image
  • Створити екземпляр класу JpegOptions
  • Встановити якість зображення
  • Викликати метод Save AiImage з шляхом призначення та екземпляром JpegOptions

Нижче наведений приклад коду демонструє, як експортувати AI в JPEG.

// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET
{
@"34992OStroke",
@"rect2_color",
};
for (int i = 0; i < sourcesFiles.Length; i++)
{
string name = sourcesFiles[i];
string sourceFileName = dataDir + name + ".ai";
string outFileName = dataDir + name + ".jpg";
using (AiImage image = (AiImage)Image.Load(sourceFileName))
{
ImageOptionsBase options = new JpegOptions() { Quality = 85 };
image.Save(outFileName, options);
}
}

Експортування AI-файлу в GIF

Aspose.PSD для .NET надає клас AiImage для завантаження файлів Adobe Illustrator, який може бути використаний для експорту файлу AI у формат GIF. Цей приклад демонструє використання Aspose.PSD для .NET API для експорту файлу AI у зображення GIF.

// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET
string[] sourcesFiles = new string[]
{
@"34992OStroke",
@"rect2_color",
};
for (int i = 0; i < sourcesFiles.Length; i++)
{
string name = sourcesFiles[i];
string sourceFileName = dataDir + name + ".ai";
string outFileName = dataDir + name + ".gif";
using (AiImage image = (AiImage)Image.Load(sourceFileName))
{
ImageOptionsBase options = new GifOptions() { DoPaletteCorrection = false };
image.Save(outFileName, options);
}
}

Експортування AI-файлу в PNG

За допомогою Aspose.PSD для .NET розробники можуть конвертувати файл Adobe Illustrator у формат PNG. Ця тема пояснює підхід до завантаження існуючого файлу AI та конвертації його в PNG за допомогою класу PngOptions.

Кроки для конвертації файлу AI в PNG настільки прості, як описано нижче:

  • Створити екземпляр AiImage та завантажити зображення за допомогою методу Load класу Image
  • Створити екземпляр класу PngOptions
  • Встановити тип кольору
  • Викликати метод AiImage.Save з шляхом призначення та екземпляром PngOptions

Нижче наведений приклад коду демонструє, як експортувати AI в PNG.

// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET
string[] sourcesFiles = new string[]
{
@"34992OStroke",
@"rect2_color",
};
for (int i = 0; i < sourcesFiles.Length; i++)
{
string name = sourcesFiles[i];
string sourceFileName = dataDir + name + ".ai";
string outFileName = dataDir + name + ".png";
using (AiImage image = (AiImage)Image.Load(sourceFileName))
{
ImageOptionsBase options = new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha };
image.Save(outFileName, options);
}
}

Експортування AI-файлу в TIFF

Aspose.PSD для .NET надає клас AiImage для завантаження файлів Adobe Illustrator, який може бути використаний для експорту файлу AI у формат TIFF. Цей приклад демонструє використання Aspose.PSD для .NET API для експорту файлу AI у зображення TIFF.

// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET
string[] sourcesFiles = new string[]
{
@"34992OStroke",
@"rect2_color",
};
for (int i = 0; i < sourcesFiles.Length; i++)
{
string name = sourcesFiles[i];
string sourceFileName = dataDir + name + ".ai";
string outFileName = dataDir + name + ".tif";
using (AiImage image = (AiImage)Image.Load(sourceFileName))
{
ImageOptionsBase options = new TiffOptions(TiffExpectedFormat.TiffDeflateRgba);
image.Save(outFileName, options);
}
}

Растрові зображення в Illustrator

Aspose.PSD для .NET тепер підтримує растрові зображення у файлах у форматі Adobe Illustrator. Наступний код демонструє, як завантажувати налаштування растрових зображень у файлах у форматі Adobe Illustrator.

// For complete examples and data files, please go to https://github.com/aspose-psd/Aspose.PSD-for-.NET
void AssertIsTrue(bool condition, string message)
{
if (!condition)
{
throw new FormatException(message);
}
}
string sourceFile = dataDir + "sample.ai";
using (AiImage image = (AiImage)Image.Load(sourceFile))
{
AiLayerSection layer = image.Layers[0];
AssertIsTrue(layer.RasterImages != null, "RasterImages property should be not null");
AssertIsTrue(layer.RasterImages.Length == 1, "RasterImages property should contain exactly one item");
AiRasterImageSection rasterImage = layer.RasterImages[0];
AssertIsTrue(rasterImage.Pixels != null, "rasterImage.Pixels property should be not null");
AssertIsTrue(rasterImage.Pixels.Length == 100, "rasterImage.Pixels property should contain exactly 100 items");
AssertIsTrue((uint)rasterImage.Pixels[99] == 0xFFB21616, "rasterImage.Pixels[99] should be 0xFFB21616");
AssertIsTrue((uint)rasterImage.Pixels[19] == 0xFF00FF00, "rasterImage.Pixels[19] should be 0xFF00FF00");
AssertIsTrue((uint)rasterImage.Pixels[10] == 0xFF01FD00, "rasterImage.Pixels[10] should be 0xFF01FD00");
AssertIsTrue((uint)rasterImage.Pixels[0] == 0xFF0000FF, "rasterImage.Pixels[0] should be 0xFF0000FF");
AssertIsTrue(Math.Abs(0.999875 - rasterImage.Width) < DefaultTolerance, "rasterImage.Width should be 0.99987");
AssertIsTrue(Math.Abs(0.999875 - rasterImage.Height) < DefaultTolerance, "rasterImage.Height should be 0.99987");
AssertIsTrue(Math.Abs(387 - rasterImage.OffsetX) < DefaultTolerance, "rasterImage.OffsetX should be 387");
AssertIsTrue(Math.Abs(379 - rasterImage.OffsetY) < DefaultTolerance, "rasterImage.OffsetY should be 379");
AssertIsTrue(Math.Abs(0 - rasterImage.Angle) < DefaultTolerance, "rasterImage.Angle should be 0");
AssertIsTrue(Math.Abs(0 - rasterImage.LeftBottomShift) < DefaultTolerance, "rasterImage.LeftBottomShift should be 0");
AssertIsTrue(Math.Abs(0 - rasterImage.ImageRectangle.X) < DefaultTolerance, "rasterImage.ImageRectangle.X should be 0");
AssertIsTrue(Math.Abs(0 - rasterImage.ImageRectangle.Y) < DefaultTolerance, "rasterImage.ImageRectangle.Y should be 0");
AssertIsTrue(Math.Abs(10 - rasterImage.ImageRectangle.Width) < DefaultTolerance, "rasterImage.ImageRectangle.Width should be 10");
AssertIsTrue(Math.Abs(10 - rasterImage.ImageRectangle.Height) < DefaultTolerance, "rasterImage.ImageRectangle.Height should be 10");
}