Сжатие изображений ICO с помощью C#
Создавайте собственные приложения .NET для сжатия (компрессии) файлов ICO с помощью серверных API
Как сжать (компрессировать) файлы ICO с помощью C#
Подготовка изображений к публикации подразумевает не только творческий процесс, ну и такую техническую работу, как, например, сжатие (компрессию) файлов. Как правило, для бумажных носителей или наружной рекламы требуются изображения в высоком разрешении, а для интернет-сайтов большой размер файла скорее будет недостатком. Исходя из назначения и среды публикации можно использовать разные параметры сжатия изображений. Файлы большого размера долго скачиваются на устройства, особенно на мобильном соединении, и ухудшают пользовательский опыт. Пользователи могут не дождаться загрузки, закрыть сайт и попытаться поискать более быстрый ресурс. В то же время, сильно сжатые изображения страдают от размытости, пиксельности и портят впечатление от просмотра. Сохранять необходимый баланс между размером файла и качеством изображения поможет оптимальный выбор алгоритмов и степени сжатия. Чтобы сжать файлы ICO, мы будем использовать Aspose.Imaging для .NET API, который представляет собой многофункциональный, мощный и простой в использовании API для обработки и преобразования изображений для платформы C#. Откройте менеджер пакетов NuGet , найдите через поиск пакет Aspose.Imaging и установите его. Вы также можете использовать следующую команду из консоли диспетчера пакетов.
Команда консоли диспетчера пакетов
PM> Install-Package Aspose.Imaging
Действия по сжатию ICO с помощью C#
Вам потребуется библиотека aspose.imaging.dll , чтобы попробовать следующий рабочий процесс в вашей собственной среде:
- загрузить файлы ICO с помощью метода Image.Load;
- применить сжатие для изображения;
- сохранить сжатое изображения на диск в поддерживаемом Aspose.Imaging формате.
Системные Требования
Aspose.Imaging для .NET поддерживается во всех основных операционных системах. Просто убедитесь, что у вас есть следующие предпосылки:
- Microsoft Windows или совместимая ОС с .NET Framework, .NET Core, приложением Windows, веб-приложением ASP.NET;
- среда разработки, такая как Microsoft Visual Studio;
- Aspose.Imaging для .NET упоминается в вашем проекте.
Сжатие ICO изображений - .NET
using Aspose.Imaging; | |
using Aspose.Imaging.FileFormats.Png; | |
using Aspose.Imaging.ImageOptions; | |
using System.Collections.Generic; | |
using System.IO; | |
using System.Linq; | |
string templatesFolder = @"c:\Users\USER\Downloads\templates\"; | |
string dataDir = templatesFolder; | |
// To compress an ICO image, it is recommended to use PNG frame format or low-bit BMP frame format. | |
// Load an ICO image. | |
using (var image = Aspose.Imaging.Image.Load(dataDir + "template.ico") as Aspose.Imaging.FileFormats.Ico.IcoImage) | |
{ | |
// Save output to disc according to save options that will compress each ICO frame as a PNG image | |
image.Save(dataDir + "result.ico", new Aspose.Imaging.ImageOptions.IcoOptions(Aspose.Imaging.FileFormat.Png, 32)); | |
// or you can apply low-bit BMP options. | |
var options = new Aspose.Imaging.ImageOptions.IcoOptions(Aspose.Imaging.FileFormat.Bmp, 8); | |
// 1, 4 and 8 bit images require a color palette. The highest quality ICO page will be used to create it. | |
var page = image.Pages.OrderBy(p => p.Width * p.Height).ThenBy(p => p.BitsPerPixel).Last(); | |
// Create the color palette. | |
options.Palette = Aspose.Imaging.ColorPaletteHelper.GetCloseImagePalette(page as Aspose.Imaging.RasterImage, 1 << options.BitsPerPixel); | |
// Save output to disc according to save options that will compress each ICO frame as an 8-bit BMP image. | |
image.Save(dataDir + "result2.ico", options); | |
} | |
File.Delete(dataDir + "result.ico"); | |
File.Delete(dataDir + "result2.ico"); |
Об Aspose.Imaging for .NET API
Aspose.Imaging API — это решение для обработки изображений, позволяющее создавать, изменять, рисовать или конвертировать изображения и фотографии в приложениях. Он предлагает: кросс-платформенную обработку изображений, включая, помимо прочего, преобразования между различными форматами изображений (включая единую многостраничную или многокадровую обработку изображений), модификации, такие как рисование, работа с графическими примитивами, преобразования (изменение размера, обрезка, отражение и поворот), бинаризация, оттенки серого, настройка яркости, контрастности, расширенные функции обработки изображений (фильтрация, дизеринг, маскирование, устранение перекоса) и стратегии оптимизации памяти. Это автономная библиотека, которая не зависит от какого-либо программного обеспечения для операций с изображениями. Можно легко добавить в проекты высокопроизводительные функции преобразования изображений с помощью собственных API. Это 100% частные локальные API, а изображения обрабатываются на ваших серверах.Сжатие файлов ICO через онлайн-приложение
Сожмите документы ICO, посетив наш веб-сайт Live Demos . Online примеры имеют следующие преимущества
ICO Чем является ICO формат
Формат файла ICO — это формат файла изображения для компьютерных значков в Microsoft Windows. Файлы ICO содержат одно или несколько небольших изображений разного размера и глубины цвета, чтобы их можно было соответствующим образом масштабировать. В Windows все исполняемые файлы, отображающие значок для пользователя на рабочем столе, в меню «Пуск» или в проводнике Windows, должны иметь значок в формате ICO.
Читать далееДругие поддерживаемые форматы сжатия
Используя C#, можно легко сжимать различные форматы, в том числе: