Инструменты для оптимизации JPEG? [закрытый]

Я не думаю, что вы должны обучать инструментам. Это следует оставить учителям Java. Они полезны и широко используются, но не имеют ничего общего с C. Отладчик - это столько, на что они должны надеяться получить доступ. Много раз все, что вы получаете, это printf и / или мигающий светодиод.

Обучайте их указателям, но учите их хорошо, говоря им, что они являются целочисленной переменной, представляющей позицию в памяти (в большинстве курсов они также проходят определенную подготовку по сборке, даже если это некая воображаемая машина, поэтому они должны быть способны понять это), а не переменная с префиксом звездочки, которая каким-то образом указывает на что-то и иногда становится массивом (C не Java). Научите их, что массивы C - это просто указатель + индекс.

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

Стандартной библиотекой является также C, пусть они используют ее, и их программы мучительно умирают в ваших частных тестах из-за использования get () и strcpy () или двойного освобождения чего-либо.

Заставьте их работать с переменными различного типа, порядком байтов (ваши тесты могут выполняться в другой арке), преобразованием с плавающей точкой в ​​int. Заставьте их использовать маски и побитовые операторы.

то есть. научить их C.

Вместо этого я получил некоторую пакетную обработку в C, которая также могла бы быть выполнена в GW-BASIC.

112
задан chris166 12 June 2009 в 09:03
поделиться

5 ответов

Я использую libjpeg для операций без потерь. Он содержит инструмент командной строки jpegtran , который может делать все, что вы хотите. С параметром командной строки -copy none удаляются все метаданные, а -optimize выполняет оптимизацию сжатия Хаффмана без потерь. Вы также можете преобразовать изображения в прогрессивный режим с помощью -progressive , но это может вызвать проблемы совместимости (кто-нибудь знает об этом больше?)

67
ответ дан 24 November 2019 в 02:50
поделиться

Я написал графический интерфейс для всех инструментов оптимизации изображений, которые мне удалось найти , включая MozJPEG и jpegoptim , оптимизирующие таблицы Хаффмана, прогрессивное сканирование и (необязательно) удаление невидимых метаданных.

ImageOptim smushing it

Если у вас нет Mac, у меня также есть базовый веб-интерфейс , который работает на любой платформе.

72
ответ дан 24 November 2019 в 02:50
поделиться

Я бы попробовал Imagemagick. Он имеет множество параметров командной строки, он бесплатный и имеет хорошую лицензию. http://www.imagemagick.org

Кажется, есть опция под названием Strip, которая может вам помочь: http://www.imagemagick.org/script/command-line-options.php#strip

9
ответ дан 24 November 2019 в 02:50
поделиться

I too would recommend ImageMagick. It has a command line option to remove EXIF metadata

mogrify -strip image.jpg

There are plenty of other tools out there that do the same thing.

As far as recompressing JPEGs go, don't. JPEGs are lossy to start with, so any form of recompression is only going to hurt image quality. However, if you have losslessly encoded images, some encoders do a better job than others. I have noticed that JPEGs done with Photoshop consistently look better than when encoded with ImageMagick (despite the same file size) due to complicated reasons. Furthermore (and this is relevant to you), I know that at least Photoshop can save JPEGs as optimized which means they drop compatibility with some stuff that you probably don't care about to save a couple of KB. Also, make sure you don't have any colour profiles embedded and you may be able to save another couple of KB.

3
ответ дан 24 November 2019 в 02:50
поделиться

На всякий случай, я написал автономную версию Yahoo Smush.it. Он без потерь оптимизирует png, jpgs и gif (анимированные и статические):

http://github.com/thebeansgroup/smush.py

4
ответ дан 24 November 2019 в 02:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: