Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] изменить размер фотографий

Ответить
Настройки темы
Любой язык - [решено] изменить размер фотографий

Старожил


Сообщения: 235
Благодарности: 8

Профиль | Отправить PM | Цитировать


Изменения
Автор: v79italya
Дата: 06-09-2019
всем привет. возможно ли изменить размер фотографий скриптом?
в папке есть несколько фото. надо изменить размер по ширине, сохраняя пропорции. в скрипте задавать нужные размеры ширины фото в пикселях. например, 800, 600, 450, 250. новые фото сохранять в ту же папку, добавив к имени исходного размер ширины. например, 1hg8_800.jpg, 1hg8_600.jpg, 1hg8_450.jpg

Отправлено: 07:25, 05-09-2019

 

Старожил


Сообщения: 427
Благодарности: 72

Профиль | Отправить PM | Цитировать


irfanview работать через консоль, и не требует установки
через скрипт можно его направить на изменение файлов

Отправлено: 09:13, 05-09-2019 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Старожил


Сообщения: 235
Благодарности: 8

Профиль | Отправить PM | Цитировать


Ageron, спасибо. я не знаю как писать скрипты. не могли бы показать каким должен быть код для этой задачи

Отправлено: 09:18, 05-09-2019 | #3


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата v79italya:
возможно ли изменить размер фотографий скриптом? »
Возможно.

Впрочем, если Вас устроит внешняя утилита — будет ещё проще. Как планируется указывать исходные файлы:
Цитата v79italya:
в папке есть несколько фото. »
?

Отправлено: 09:42, 05-09-2019 | #4


Старожил


Сообщения: 235
Благодарности: 8

Профиль | Отправить PM | Цитировать


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

Отправлено: 09:55, 05-09-2019 | #5


Старожил


Сообщения: 427
Благодарности: 72

Профиль | Отправить PM | Цитировать


Цитата v79italya:
не могли бы показать каким должен быть код для этой задачи »
так попробуйте
i_view32.exe c:\pic\*.jpg /resize_short=600 /aspectratio /resample /convert=c:\pic\*_$W.jpg

Отправлено: 10:54, 05-09-2019 | #6


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


v79italya, попробуйте так:
Скрытый текст
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

set sSourceFolder=%~1

if defined sSourceFolder (
	if exist "%sSourceFolder%\." (
		if exist "%ProgramFiles%\NConvert\nconvert.exe" (
			pushd "%sSourceFolder%"
			for /f "usebackq delims=" %%i in (
				`2^>nul dir /a:-d /b "*.*"`
			) do for %%j in (800 600 450 250) do "%ProgramFiles%\NConvert\nconvert.exe" -v -overwrite -o %%_%%j -keepfiledate -resize %%j 0 -ratio -rflag orient "%%~i"
			popd
		) else (
			echo Can't find programm [nconvert.exe] in folder [%ProgramFiles%\NConvert].
			exit /b 3
		)
	) else (
		echo Can't find source folder [%sSourceFolder%].
		exit /b 2
	)
) else (
	echo Usage: %~nx0 ^<Source folder^>
	exit /b 1
)

endlocal
exit /b 0

Вам понадобится загрузить архив XnView Software · nConvert соответствующей разрядности и извлечь содержимое в каталог «%ProgramFiles%\NConvert». Целевой каталог задаётся параметром пакетного файла (также можно просто перетащить каталог на пакетный файл в Проводнике).
Это сообщение посчитали полезным следующие участники:

Отправлено: 11:16, 05-09-2019 | #7


Старожил


Сообщения: 235
Благодарности: 8

Профиль | Отправить PM | Цитировать


Ageron, что не так я сделал?
Iska, что не так я сделал?

Последний раз редактировалось v79italya, 18-10-2019 в 21:39.


Отправлено: 15:07, 05-09-2019 | #8


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата v79italya:
Iska, что не так я сделал? »
Сохранили код пакетного файла в качестве скрипта WSH. Поменяйте расширение с «.js» на «.cmd».

Цитата v79italya:
Ageron, что не так я сделал? »
Не загрузили/не установили IrfanView, либо сделали то и другое, но не добавили путь к нему в PATH/не указали полный путь к исполняемому файлу IrfanView.

Отправлено: 19:20, 05-09-2019 | #9


Старожил


Сообщения: 235
Благодарности: 8

Профиль | Отправить PM | Цитировать


Цитата Iska:
меняйте расширение с «.js» на «.cmd». »
не работает. мигнет и все. может пути не те. не вижу как задать папку с фотографиями. в notepad нет .cmd, поэтому задал расширение вручную.
Цитата Iska:
не указали полный пут »
вот так не работает - C:\Program Files\IrfanView\i_view32.exe C:\abc\a\a\*.jpg /resize_short=600 /aspectratio /resample /convert=C:\abc\a\b\*_$W.jpg ошибка следующая

Последний раз редактировалось v79italya, 18-10-2019 в 21:39.


Отправлено: 20:00, 05-09-2019 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] изменить размер фотографий

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
невозможно изменить размер видеопамяти ? 184766 Материнские платы и память 17 06-12-2016 16:27
2008 R2 - Изменить размер диска Intelide Windows Server 2008/2008 R2 2 08-07-2016 04:01
CMD/BAT - Как изменить размер файла ? StreetX Скриптовые языки администрирования Windows 5 21-10-2015 07:43
Flash - изменить размер флэш-памяти CUBANO Накопители (SSD, HDD, USB Flash) 4 11-11-2011 16:19
Suse/OpenSuSE - [решено] Как изменить размер ramdisk? Midnight-Ghost Общий по Linux 3 05-08-2011 00:34




 
Переход