- 4 Ways to Batch Convert Your PNG to JPG and Vice-Versa
- 1. Convert PNG to JPG Using ‘ls’ and ‘xargs’ Commands
- 2. Convert PNG to JPG Using GNU ‘Parallel’ Command
- 3. Convert PNG to JPG Using ‘for loop’ Command
- 4. Convert PNG to JPG Using Shell Script
- If You Appreciate What We Do Here On TecMint, You Should Consider:
- Как конвертировать изображения с помощью Linux
- Команда Преобразования
- Как изменить размер изображения
- Как конвертировать из одного формата изображения в другой
- Как настроить размер файла для изображения
- Как вращать изображения
- Конвертировать параметры командной строки
4 Ways to Batch Convert Your PNG to JPG and Vice-Versa
In computing, Batch processing is the execution of a series of tasks in a program non-interactively. In this guide will offer you 4 simple ways to batch convert several .PNG images to .JPG and vice-versa using Linux command-line tools.
We will use convert command line tool in all the examples, however, you can as well make use of mogrify to achieve this.
The syntax for using convert is:
And for mogrify is:
Note: With mogrify, the original image file is replaced with the new image file by default, but it is possible to prevent this, by using certain options that you can find in the man page.
Below are the various ways to batch convert your all .PNG images to .JPG format, if you want to convert .JPG to .PNG , you can modify the commands according to your needs.
1. Convert PNG to JPG Using ‘ls’ and ‘xargs’ Commands
The ls command allows you to list all your png images and xargs make it possible to build and execute a convert command from standard input to convert all .png images to .jpg .
Explanation about the options used in the above command.
- -1 – flag tells ls to list one image per line.
- -n – specifies the maximum number of arguments, which is 1 for the case.
- -c – instructs bash to run the given command.
- $<0%.png>.jpg – sets the name of the new converted image, the % sign helps to remove the old file extension.
Convert PNG to JPG Format in Linux
Similarly, you can use above command to convert all your .jpg images to .png by tweaking the above command.
2. Convert PNG to JPG Using GNU ‘Parallel’ Command
GNU Parallel enables a user to build and execute shell commands from standard input in parallel. Make sure you have GNU Parallel installed on your system, otherwise install it using the appropriate commands below:
Once Parallel utility installed, you can run the following command to convert all .png images to .jpg format from the standard input.
- <> – input line which is a replacement string substituted by a complete line read from the input source.
- <.>– input line minus extension.
- . – specifies input source, that is the command line for the example above where *png or *jpg is the argument.
Parallel Command – Converts All PNG Images to JPG Format
Alternatively, you can as well use ls and parallel commands together to batch convert all your images as shown:
3. Convert PNG to JPG Using ‘for loop’ Command
To avoid the hustle of writing a shell script, you can execute a for loop from the command line as follows:
Description of each option used in the above command:
- -c allows for execution of the for loop statement in single quotes.
- The image variable is a counter for number of images in the directory.
- For each conversion operation, the echo command informs the user that a png image has been converted to jpg format and vice-versa in the line $image converted to $
.jpg ”. - “$
.jpg” creates the name of the converted image, where % removes the extension of the old image format.
for loop – Convert PNG to JPG Format
4. Convert PNG to JPG Using Shell Script
If you do not want to make your command line dirty as in the previous example, write a small script like so:
Note: Appropriately interchange the .png and .jpg extensions as in the example below for conversion from one format to another.
Save it as convert.sh and make the script executable and then run it from within the directory that has your images.
Batch Image Convert Using Shell Script
In summary, we covered some important ways to batch convert .png images to .jpg format and vice-versa. If you want to optimize images, you can go through our guide that shows how to compress png and jpg images in Linux.
You can as well share with us any other methods including Linux command line tools for converting images from one format to another on the terminal, or ask a question via the comment section below.
If You Appreciate What We Do Here On TecMint, You Should Consider:
TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.
If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.
We are thankful for your never ending support.
Источник
Как конвертировать изображения с помощью Linux
Это руководство покажет вам, как управлять изображениями с помощью командной строки Linux.
Вы узнаете, как изменить размер изображения с точки зрения размера файла и масштаба. Вы также узнаете, как конвертировать файлы разных типов, например, из JPG в PNG или из GIF в TIF.
Команда Преобразования
Команда convert используется для преобразования изображения. Формат выглядит следующим образом:
конвертировать [входные параметры] входной файл [выходные параметры] выходной файл.
Как изменить размер изображения
Если вы собираетесь добавить изображение на веб-страницу и хотите, чтобы оно было определенного размера, вы можете использовать CSS для изменения размера изображения.
Хотя на самом деле лучше сначала загрузить изображение правильного размера и вставить его на страницу.
Это, конечно, только один пример, почему вы можете изменить размер изображения.
Чтобы изменить размер изображения, используйте следующую команду
convert imagename.jpg — изменить размеры newimagename.jpg
Например, чтобы преобразовать изображение в 800×600, вы должны использовать следующую команду:
convert imagename.jpg -resize 800×600 newimagename.jpg
Если при преобразовании в указанные размеры соотношение сторон будет испорчено, изображение будет изменено до ближайшего соотношения.
Чтобы преобразование было точным, используйте следующую команду:
convert imagename.jpg — изменить размер 800×600! newimagename.jpg
Вам не нужно указывать высоту и ширину как часть команды изменения размера. Например, если вы хотите, чтобы ширина была 800, и вас не заботит высота, вы можете использовать следующую команду:
convert imagename.jpg -resize 800 newimagename.jpg
Чтобы изменить размер изображения до указанной высоты, используйте следующую команду:
конвертировать imagename, jpg -resize x600 newimagename.jpg
Как конвертировать из одного формата изображения в другой
Если у вас есть файл JPG, и вы хотите преобразовать его в формат PNG, используйте следующую команду:
convert image.jpg image.png
Вы можете комбинировать много разных форматов файлов. Например
convert image.png image.gif
convert image.jpg image.bmp
convert image.gif image.tif
Как настроить размер файла для изображения
Существует несколько способов изменить физический размер файла изображения.
- Изменить соотношение сторон (сделать его меньше)
- Изменить формат файла
- Изменить качество сжатия
Уменьшение размера изображения приведет к уменьшению размера файла. Кроме того, использование формата файла, который включает сжатие, такого как JPG, позволит вам уменьшить физический размер файла.
Наконец, изменение качества уменьшит физический размер файла.
Предыдущие 2 раздела показали, как настроить размер и тип файла. Чтобы сжать изображение, попробуйте следующую команду:
convert imagename.jpg — качество 90 newimage.jpg
Качество указывается в процентах. Чем ниже процент, тем меньше выходной файл, но очевидно, что конечное качество вывода не так хорошо.
Как вращать изображения
Если вы сделали фотографию в портретной ориентации, но хотите, чтобы она была пейзажной, вы можете повернуть ее с помощью следующей команды:
convert imagename.jpg -ротация 90 newimage.jpg
Вы можете указать любой угол поворота.
Например, попробуйте это:
convert imagename.jpg -rotate 45 newimage.jpg
Конвертировать параметры командной строки
Есть десятки параметров командной строки, которые можно использовать с командой convert, как показано здесь:
Опции обрабатываются в порядке командной строки. Любая опция, указанная вами в командной строке, остается в силе для следующего набора изображений до тех пор, пока набор не будет прерван появлением какой-либо опции или -noop . Некоторые параметры влияют только на декодирование изображений, а другие только на кодирование. Последний может появиться после последней группы входных изображений.
Более подробное описание каждого параметра см. В разделе ImageMagick .
-adjoin | объединить изображения в один файл из нескольких изображений |
-аффинны | матрица преобразования рисунка |
-antialias | удалить псевдонимы пикселей |
-append | добавить набор изображений |
-среднее | усредняет набор изображений |
-background | цвет фона |
-blur x | размытие изображения с помощью гауссовского оператора |
-border x | окружите изображение цветной рамкой |
-bordercolor | цвет границы |
-Box | установить цвет рамки аннотации |
-cache | мегабайт памяти доступно для пиксельного кэша |
канальное | тип канала |
-charcoal | имитировать рисунок углем |
-chop x <+ -> удаляет пиксели из внутренней части изображения | |
-Clip | применить обтравочный контур, если он есть |
-coalesce | объединить последовательность изображений |
-colorize | раскрасьте изображение цветом пера |
-Цвета | предпочтительное количество цветов на изображении |
-colorspace | тип цветового пространства |
-comment | комментирует изображение с комментарием |
-compose | тип композиции изображения |
-compress | тип сжатия изображения |
-contrast | увеличить или уменьшить контрастность изображения |
-crop x <+ -> предпочтительный размер и расположение обрезанного изображения | |
-циклом | сместить цветовую карту изображения на сумму |
-debug | включить распечатку отладки |
-deconstruct | разбить последовательность изображений на составные части |
-delay | отобразить следующее изображение после паузы |
-density x | вертикальное и горизонтальное разрешение в пикселях изображения |
-depth | глубина изображения |
-despeckle | уменьшить спеклы на изображении |
-display | указывает X-сервер для связи |
-dispose | метод удаления GIF |
-dither | применить диффузию ошибок Флойда/Стейнберга к изображению |
-draw | комментирует изображение с одним или несколькими графическими примитивами |
-Станок | обнаруживать края в изображении |
-emboss | тиснение изображения |
-encoding | указать кодировку шрифта |
-endian | указывает порядковый номер (MSB или LSB) выходного изображения |
-enhance | применить цифровой фильтр для улучшения изображения с шумом |
-equalize | выполнить выравнивание гистограммы к изображению |
-fill | цвет, используемый при заполнении графического примитива |
-filter | используйте этот тип фильтра при изменении размера изображения |
-flatten | сгладить последовательность изображений |
-flip | создать “зеркальное отображение” |
-flop | создать “зеркальное отображение” |
-font | используйте этот шрифт при аннотировании изображения текстом |
-frame x ++ | окружите изображение орнаментальной рамкой |
-fuzz | цвета на этом расстоянии считаются равными |
-gamma | уровень гамма-коррекции |
-гаусский x | размытие изображения с помощью гауссовского оператора |
-геометрия x <+ -> <+ -> <%> <@> <> | предпочитаемый размер и расположение окна изображения. |
-gravity | тяготеет к аннотированию изображения. |
-help | распечатать инструкцию по использованию |
-implode | взорвать пиксели изображения вокруг центра |
-intent | используйте этот тип рендеринга при управлении цветом изображения |
-interlace | тип схемы чередования |
-label | назначить метку изображению |
уровневый | настроить уровень контрастности изображения |
-list | тип списка |
-loop | добавьте расширение цикла Netscape в анимацию GIF |
-map | выберите определенный набор цветов из этого изображения |
-mask | Укажите обтравочную маску |
-matte | сохранить матовый канал, если у изображения есть один |
-медиане | применить медианный фильтр к изображению |
-modulate | изменяет яркость, насыщенность и оттенок изображения |
-monochrome | преобразовать изображение в черно-белое |
-morph | трансформирует последовательность изображений |
-mosaic | создать мозаику из последовательности изображений |
-negate | замените каждый пиксель его дополнительным цветом |
-noise | добавить или уменьшить шум на изображении |
-noop | NOOP (без опции) |
-normalize | преобразовать изображение, чтобы охватить весь диапазон значений цвета |
-opaque | измените этот цвет на цвет пера внутри изображения |
-page x <+ -> <+ -> <%> <> | размер и расположение холста изображения |
-paint | имитировать масляную живопись |
-pen | укажите цвет пера для операций рисования |
-ping | эффективно определять характеристики изображения |
-pointsize | pointsize шрифта Postscript, OPTION1 или TrueType |
-Preview | тип предварительного просмотра изображения |
-процесс | обрабатывать последовательность изображений |
-profile | добавить ICM, IPTC или общий профиль к изображению |
-качество | уровень сжатия JPEG/MIFF/PNG |
-raise x | осветлить или затемнить края изображения |
-region x применить параметры к части изображения | |
-resize x <%> <@> <> | изменить размер изображения |
-roll свернуть изображение по вертикали или по горизонтали | |
-rotate <> | применить поворот изображения Паэта к изображению |
-sample | масштабировать изображение с пиксельной выборкой |
-sampling_factor x | коэффициенты выборки, используемые кодером JPEG или MPEG-2 и YUV-декодером/кодером. |
-scale | масштабировать изображение. |
-scene | установить номер сцены |
-seed | начальное значение генератора псевдослучайных чисел |
-сегмент x | сегментирует изображение |
-shade x | закрасьте изображение, используя удаленный источник света |
-sharpen x | отточить изображение |
-бритье x | брить пиксели от краев изображения |
-shear x | сдвиг изображения вдоль оси X или Y |
-size x | ширина и высота изображения |
-solarize | отменяет все пиксели выше порогового уровня |
-spread | смещать пиксели изображения на случайную величину |
двухтактным | цвет, используемый при поглаживании графического примитива |
-strokewidth | установить ширину штриха |
-swirl | вихревые пиксели изображения вокруг центра |
-texture | название текстуры для мозаичного изображения на фоне изображения |
-threshold | пороговое изображение |
-tile | мозаичное изображение при заполнении графического примитива |
-преобразования | преобразовать изображение |
-transparent | сделайте этот цвет прозрачным внутри изображения |
-treedepth | глубина дерева для алгоритма уменьшения цвета |
-trim | обрезать изображение |
-type | тип изображения |
-единицы | тип разрешения изображения |
-unsharp x | резкость изображения с помощью оператора нерезкой маски |
-use_pixmap | использовать растровое изображение |
-verbose | распечатать подробную информацию об изображении |
-view | Параметры просмотра FlashPix |
-wave x | изменить изображение вдоль синусоиды |
-Write | написать последовательность изображений [ convert, Composite ] |
Для получения дополнительной информации прочитайте страницу руководства для команды convert.
Источник