Как мне конвертировать .PNG в .ICO?

27

В пакете значков VS2010 есть изображение, которое включено только в формате PNG, которое я хотел бы использовать в качестве ICO (я хочу, чтобы XP и более ранние пользователи видели значок). Как я могу преобразовать PNG в ICO?

Билли ОНил
источник

Ответы:

20

Вы можете использовать утилиту imagemagick с открытым исходным кодом convert, которая может взять несколько изображений и упаковать их в один файл значка. Это может также сделать изменение размера и много манипуляций с изображением. Imagemagick содержит другие инструменты для работы с изображениями, доступна на нескольких платформах (Linux, Windows, Mac Os X, iOS) и может быть легко упакована, например, в конвейеры непрерывной интеграции.

Вот основной пример экспорта файла SVG:

convert icon.svg -scale 32 tmp/32.png

И как упаковать несколько таких файлов в финальную иконку:

convert tmp/16.png tmp/32.png tmp/48.png tmp/128.png tmp/256.png  icon.ico
Уриэль
источник
10

Есть также плагин Paint.NET ICO (плагин теперь обновлен до версии 4.0 + ).

Загрузите IcoCur.Zip. Разархивируйте dll и поместите ее в папку «FileTypes» в каталоге Paint.NET.

Он загрузит и сохранит файлы .ico, .cur и .ani (.ani по состоянию на 29 июля 2006 г.).

При загрузке из файла пиктограммы или курсора, который содержит несколько изображений, вы получите приглашение и сможете выбрать, какое изображение загрузить. Меня всегда беспокоило, когда в файле значков было 3 или около того изображения, а другие редакторы изображений просто автоматически загружали 8x8 с низким разрешением или что-то в этом роде, поэтому я добавил эту функцию на выбор.

М. Дадли
источник
2
Плагин Paint.NET ico был обновлен для поддержки v4 + forums.getpaint.net/index.php?/topic/…
rburte
Это работало отлично и дало лучшие результаты для меня, чем использование imageMagick. Мне пришлось использовать «Выбрать все» из опций при сохранении .icoфайла, чтобы заставить его работать правильно. Я обнаружил, что результаты icofx немного лучше, но это бесплатно.
icc97
8

Установите ffmpeg из: Windows: http://ffmpeg.zeranoe.com/builds/ OSX: http://ffmpegmac.net/

Из оболочки используйте следующую команду для преобразования PNG в ICO.

ffmpeg -i img.png img.ico

Также, если вы регулярно используете ffmpeg, не забудьте добавить его в переменную PATH.

Hemanta
источник
1
Пожалуйста, предоставьте контекст для вашего ответа. Является ли ffmpegпоставляется с Windows? Как мне установить его, если это не так? Как бы то ни было, ваш ответ (хотя и технически точный) недостаточно высокого качества.
Хорошая попытка. Это работает для bmp, но не для ico(это зашифровано для меня).
Кенорб
Работай для меня на Mac. ffmepg может быть установлен вместе с Homebrew: brew install ffmpeg
F. Geraerts
3

Да, вы можете использовать веб-сайты, как некоторые люди рекомендуют в своих ответах, но если вы научитесь делать это правильно, вы, вероятно, сможете сделать это самостоятельно за то же время, которое требуется для перехода на сайт, загрузки файла, ожидания в очереди и скачать его снова. Недостаток использования сайтов в том, что вы обычно не можете контролировать размеры или качество изображения отдельных размеров внутри значка.

Вот как вы делаете это вручную. Вы можете использовать GIMP - альтернативу Photoshop с открытым исходным кодом, которую можно скачать с веб-сайта проекта. Никаких дополнительных плагинов не потребуется. Возьмите PNG, который хотите конвертировать. Он должен иметь размер не менее 128 пикселей, но лучше 256+.

Откройте png в Gimp. Вы собираетесь сделать изображение из нескольких слоев. Когда вы закончите, каждый слой будет иметь разный размер в готовой иконке. Вот макет слоя, который я обычно использую 256px (необязательно), 128px, 96px, 64px, 48px, 40px, 32px и 24px. Вы хотите иметь это разнообразие в размерах, потому что вам нужно учитывать все различные масштабирования, которые пользователь будет иметь при просмотре в проводнике. 256 - это излишне, но почему бы не использовать значок в будущем?

Шаг 1: импортировать png в gimp. Я обычно делаю это, используя Open With в Windows на PNG и выбирая GIMP. Gimp сделает все остальное после этого. убедитесь, что это единственный слой на данный момент (удалите все фоновые слои, если gimp сделал любой).

Шаг 2: Измените размер изображения до 256x256 (или 128x128, если вы не хотите использовать 256), щелкнув меню « Изображение» и выбрав « Масштабировать изображение» . Если изображение, которое вы указали, не квадратное, вам придется его обрезать перед масштабированием, иначе оно будет выглядеть странно. Вы можете обрезать, используя инструмент выбора прямоугольника (убедитесь, что вы делаете квадратное выделение, нажимая Shift при выборе). Когда вы закончите выбирать, нажмите на меню Изображение и выберите Обрезать до выделения .

Шаг 3: Дублируйте текущий слой, выбрав меню « Слой» и выбрав « Дублировать слой» . Снова нажмите меню « Слой», выберите « Масштабировать слой» и измените размер дублированного слоя до нового размера, например 128 или 96 и т. Д.

Шаг 4: промойте и повторяйте, пока вы не сделаете свои слои вплоть до 24 пикселей.

Шаг 5: экспортировать текущий чертеж в виде значка, щелкнув меню « Файл» и выбрав « Экспортировать как» . Когда вы получаете диалоговое окно, вы хотите убедиться, что вы указали правильное расширение (.Ico), а gimp обработает все остальное.

thebunnyrules
источник
1

Если вы используете OSX. На самом деле вы можете использовать встроенное приложение предварительного просмотра, чтобы сохранить файл в довольно широком диапазоне типов файлов.

FileExport...→ Удерживайте (alt / opt) и щелкните файл Formatсписка

TA-DA,

Jpatrick
источник
1

Я рекомендую IcoFX. Когда-то он был доступен как бесплатное. К счастью, последняя версия бесплатной была сохранена, например , здесь , на chip.de .

Это скриншот, предоставленный chip.de:

введите описание изображения здесь

Это позволяет очень точно контролировать все изображения в значке, что очень важно для профессионального использования. Например, значок 16x16 должен быть не просто версией с пониженной дискретизацией, а отдельным изображением с уменьшенными деталями.

Вы также должны предоставить изображения с меньшей битовой глубиной для использования с подключениями к удаленному рабочему столу.

В отличие от другого программного обеспечения, где создание значков с несколькими разрешениями основано на соглашениях (например, названия слоев или чего-либо еще), IcoFX очень четко об этом говорит. Это делает его несколько проще в использовании.

Кстати: создавать хорошие иконки непросто. Обязательно прочитайте рекомендации Microsoft по этому вопросу .

Даниэль Б
источник
0

Если вы ImageMagickустановили, вы можете использовать convertутилиту, чтобы изменить png на ico

convert icon.jpg -scale 256 icon.ico

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

ilnli
источник