Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   BAT. Поочередное открытие группы файлов приложением. (http://forum.oszone.net/showthread.php?t=275402)

SergMarkow 08-01-2014 16:46 2284926

BAT. Поочередное открытие группы файлов приложением.
 
Доброго времени суток.
Прошу помочь составить bat-файл, если это возможно.
Требуется: найти в папках файл с расширением JPG, открыть его с помощью программы mspaint.exe, Сохранить под этим же именем и расширением JPG. Проделать эту операцию со всеми файлами JPG.

Сам цикл поиска JPG в текущей папке можно написать, например, так:
Код:

@Echo Off
SetLocal EnableExtensions

For %%A In ("*.jpg") Do Call :Func "%%~nxA"
exit /b

:Func
Set FileName=%~n1
%windir%\system32\mspaint.exe %FileName%
goto :eof

Но как создать процесс автоматического сохранения?

Iska 08-01-2014 18:13 2284981

Цитата:

Цитата SergMarkow
Но как создать процесс автоматического сохранения? »

В рамках заданной категории — никак.

А в чём глобальный смысл идеи открыть и сохранить файл?

SergMarkow 08-01-2014 18:47 2285002

Если у Вас есть фотографии, сохраненные с фотокамеры с расширением JPG, проделайте такую операцию вручную с какой нибудь одной фотографией - она сожмется минимум в 2 раза без заметной потери качества, разрешение фотографии останется тем же. Никакие программы для сжатия полноцветной графики не дают таких результатов - только при условии потери качества или разрешения картинки. Причем способ такой не сработает на обычной картинке с интернета, только на фотографиях с фотокамеры.

SergMarkow 08-01-2014 19:06 2285014

Iska, код, который я напечатал выше не работает с файлами, имена которых содержат пробелы. Как решить эту проблему?

Iska 08-01-2014 20:44 2285044

Цитата:

Цитата SergMarkow
проделайте такую операцию вручную с какой нибудь одной фотографией - она сожмется минимум в 2 раза без заметной потери качества, »

С потерей качества. Любое сохранение в jpg приводит к потере качества. Таков алгоритм.

Цитата:

Цитата SergMarkow
Никакие программы для сжатия полноцветной графики не дают таких результатов - только при условии потери качества или разрешения картинки. »

Неверное утверждение. Дают. Любые. Про потерю качества см. выше.

Цитата:

Цитата SergMarkow
Причем способ такой не сработает на обычной картинке с интернета, только на фотографиях с фотокамеры. »

Сработает. С любым изображением при его сохранении в jpg или иной подобный формат.


nconvert.exe из комплекта XnView:
Код:

@echo off
setlocal enableextensions enabledelayedexpansion

for %%i in (*.jpg) do "C:\Program Files\XnView\nconvert.exe" -out jpeg -overwrite -q 80 "%%i"

endlocal
exit /b 0


mwz 08-01-2014 20:58 2285047

Цитата:

Цитата SergMarkow
код, который я напечатал выше не работает с файлами, имена которых содержат пробелы. Как решить эту проблему? »

Имена файлов с пробелами необходимо заключать в кавычки.

Т.е. как минимум должно быть не просто %FileName%, а "%FileName%"

SergMarkow 08-01-2014 21:18 2285054

Цитата:

Цитата Iska
С потерей качества. Любое сохранение в jpg приводит к потере качества. Таков алгоритм. »

Я не говорю о том, что качество не теряется, я говорю о том, что потеря качества незаметна визуально.
Проверьте на файле с расширением JPG, который можно скачать по ссылке ниже.
http://www.fayloobmennik.net/3473492
Откройте его в Paint.exe и просто сохраните. Увидите, что объем файла уменьшился примерно на 1 Мб. А теперь посмотрите на качество и сравните визуально с исходником. Даже при многократном увеличении фотографии разницы не видно, при этом объем файла заметно меньше.
Если получится другим способом сильнее сжать эту картинку с более высоким или таким же качеством, выложите, буду благодарен.

Мое предыдущее сообщение прошу во внимание не брать - вопрос решился добавлением кавычек.

mwz, благодарю.

Foreigner 08-01-2014 21:55 2285071

Цитата:

Цитата Iska
-q 80 »

Даже без этого параметра исходное фото "сжимается" лучше чем пэинт.

mwz 08-01-2014 21:58 2285075

Цитата:

Цитата SergMarkow
Если получится другим способом »

Взгляните http://mwz-ru.homeserver.com/main/te...6resampled.jpg -- 508 кил, и
http://mwz-ru.homeserver.com/main/te...resampled2.jpg -- 301 килобайт.
Кстати, из исходного фото непонятно -- это розы, или хлопок, или что ещё. Что и помогло сильно поджать с исходных 3 мегабайт. ;)

SergMarkow 08-01-2014 22:37 2285101

Сжато хорошо, я могу сжать еще лучше, но потеряю качество.
mwz, теперь посмотрите как потеряли качество фотографии, выложенные Вами. Я просто увеличил один и тот же фрагмент на всех фотографиях.
http://www.fayloobmennik.net/3473651
Где какая фотография можно понять по названиям. Верхние две - оригинал и и фотография сжатая в Painte - изменения в качестве вообще не заметны (при этом разница в объеме в 1 Мб).
Нижние две, это фотографии, скачанные по ссылкам
Цитата:

Цитата mwz

Потеря качества очень существенна, мало того, даже форма бутона теряется и частично замещается зеленым цветом.

mwz 08-01-2014 23:34 2285134

Цитата:

Цитата SergMarkow
Потеря качества очень существенна »

Ну всё же 6 и тем более 10 крат для JPG -- величина, мягко говоря, немалая... Использовался IrfanView с плагином, позволяющим сохранить результат в файл заданного размера.
Кстати, все погрешности преобразований зрительно выплывают при вычитании конечного изображения из исходного (практически реализуется суммированием второго с инверсным первым).

Iska 09-01-2014 08:15 2285274

Цитата:

Цитата SergMarkow
Я не говорю о том, что качество не теряется, я говорю о том, что потеря качества незаметна визуально.
Проверьте на файле с расширением JPG, который можно скачать по ссылке ниже.
http://www.fayloobmennik.net/3473492
Откройте его в Paint.exe и просто сохраните. Увидите, что объем файла уменьшился примерно на 1 Мб. А теперь посмотрите на качество и сравните визуально с исходником. Даже при многократном увеличении фотографии разницы не видно, при этом объем файла заметно меньше.
Если получится другим способом сильнее сжать эту картинку с более высоким или таким же качеством, выложите, буду благодарен. »

Коллега, Вы строите выводы на неверных исходных предпосылках. Возьмите какую-нибудь литературу по форматам JPEG/MPEG и прочтите.

Что касается качества — у Вас в исходном изображении — сжимай его, не сжимай — качества ноль.

Цитата:

Цитата SergMarkow
mwz, теперь посмотрите как потеряли качество фотографии, выложенные Вами. Я просто увеличил один и тот же фрагмент на всех фотографиях. … Потеря качества очень существенна, мало того, даже форма бутона теряется и частично замещается зеленым цветом. »

Прочтите литературу по формату JPEG. Особливо насчёт того, на чём основано сжатие на основе потери качества.

Я уже говорил, выше, что качество исходного изображения просто отвратительно. Если Вам не нравится использованный в примере коллеги mwz сэмплинг/дискретизация, задавайте его сами.

Вот так я сжал Ваше изображение практически втрое:
Код:

"%ProgramFiles%\XnView\nconvert.exe" -out jpeg -overwrite -q 80 DSC00136.JPG
Вот так:
Код:

"%ProgramFiles%\XnView\nconvert.exe" -out jpeg -overwrite -subsampling 2 -q 80 DSC00136.JPG
— с принудительным указанием минимального размера сэмплинга — более чем в полтора раза.

Вот так:
Код:

"%ProgramFiles%\XnView\nconvert.exe" -out jpeg -overwrite -subsampling 2 DSC00136.JPG
— с принудительным указанием минимального размера сэмплинга и без указания уменьшения качества — почти в полтора раза.

P.S. Ещё раз напоминаю о настоятельной необходимости прочтения литературы. Многие вопросы отпадут.

SergMarkow 09-01-2014 19:44 2285625

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

P.S. Возьму Ваш стиль общения на форуме на вооружение и отвечу на Ваше неверные утверждения.

Цитата:

Цитата Iska
Коллега, Вы строите выводы на неверных исходных предпосылках. »

Ни в одном моем сообщении нет выводов - Ваше утверждение неверно.

Цитата:

Цитата Iska
Что касается качества — у Вас в исходном изображении — сжимай его, не сжимай — качества ноль. »

Снова неверно. Качество изображения ноль - это как? Некорректно, бессмысленно и, снова, неверно.

Цитата:

Цитата Iska
Если Вам не нравится использованный в примере коллеги mwz сэмплинг/дискретизация, задавайте его сами. »

Я ничего не печатал о том - нравится или не нравится. Я произвел сравнение и выложил на форум. Снова Ваше утверждение неверно.

Подведем итог: из всех сообщений и ответов актуальным теме вопроса считаю только первое сообщение.
Цитата:

Цитата Iska
В рамках заданной категории — никак.
А в чём глобальный смысл идеи открыть и сохранить файл? »

Считаю Ваш ответ исчерпывающим и предлагаю закрыть тему.

Iska 09-01-2014 22:11 2285700

Цитата:

Цитата SergMarkow
Iska, не понимаю Вашу агрессию. »

Это не агрессия.

Цитата:

Цитата SergMarkow
Тема моего вопроса не касается сжатия изображений, »

Не касается, а является им (сжатием).

Цитата:

Цитата SergMarkow
у меня нет никаких вопросов по сжатию JPG и я их не задавал. »

Вы их не задавали. Вы задавали иные, вида: «Дурак, ты пальцем покажи».

Цитата:

Цитата SergMarkow
Соответственно Ваше напоминание о настоятельной необходимости прочтения литературы считаю неуместным »

А теперь — ещё и обязательным.

Цитата:

Цитата SergMarkow
напоминайте другим. »

И другим напомню, буде нужда в том.

Цитата:

Цитата SergMarkow
Ни в одном моем сообщении нет выводов - Ваше утверждение неверно. »

Да, ну? Я не говорю о знаниях — Вы их получать не желаете. Вы уже сделали для себя выводы. Теперь хотите выполнить некие действия, основанные на этих выводах. То, что они не верны, Вам неважно — Вы будете упорно настаивать на своём: «Кто придумал, что Земля вращается вокруг Солнца? Я вижу, что происходит совсем наоборот. И точка!»

Цитата:

Цитата SergMarkow
Снова неверно. Качество изображения ноль - это как? Некорректно, бессмысленно и, снова, неверно. »

Согласен. Некорректно. Сформулирую иначе: «Качество исходного изображения уже изначально отвратительно. Посему говорить о каких-то потерях качества при сжатии не имеет смысла.».

Цитата:

Цитата SergMarkow
Я ничего не печатал о том - нравится или не нравится. Я произвел сравнение и выложил на форум. Снова Ваше утверждение неверно. »

А я Вам предложил выбрать подходящий Вам, именно Вам вариант. Очевидно три строки кода прошли мимо Вашего внимания, если Вы их не увидели.

Цитата:

Цитата SergMarkow
Подведем итог: из всех сообщений и ответов актуальным теме вопроса считаю только первое сообщение. »

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


Время: 13:59.

Время: 13:59.
© OSzone.net 2001-