Есть ли способ просмотра изображений jpg в командной строке PHP?
Я хотел бы пройтись по каталогу фотографий в программе PHP командной строки и использовать нажатие клавиши, используя php stdin, для выполнения действия над этой фотографией, например, перемещения его в другой каталог. Я не смог найти метод для вывода каждого изображения из командной строки PHP.
Спасибо
Вот код, который у меня есть до сих пор. Если я могу просмотреть JPG, я думаю, что все будет в порядке …
<?php
// View the jpg images one at a time
$files = glob("images/*.jpg");
foreach($files as $jpg){
// echo "<img src='$jpg'></br>";
echo "view image somehow" . PHP_EOL;
echo "The jpg variable equals '$jpg'" . PHP_EOL;
// show them a message to enter letter for category
echo "Enter the category, a(family), r(friends), c(coworkers), d(delete), ctrl-letter(two folders)" . PHP_EOL;
// the script will wait here until the user has entered something and hit ENTER
$category = read_stdin();
// This will display the category message including the category they entered.
echo "You chose $category . Next photo" . PHP_EOL;
switch ($category) {
case "a":
echo "$category equals family" . PHP_EOL;
r ename("$jpg", "images/sorted/family/$jpg");
break;
case "r":
echo "$category equals friends" . PHP_EOL;
rename("$jpg", "images/sorted/friends/$jpg");
break;
case "c":
echo "$category equals coworkers" . PHP_EOL;
rename("$jpg", "images/sorted/coworkers/$jpg");
break;
default:
echo "$category is not equal to a,r, or c" . PHP_EOL;
}
}
// our function to read from the command line
function read_stdin()
{
$fr=fopen("php://stdin","r"); // open our file pointer to read from stdin
$input = fgets($fr,128); // read a maximum of 128 characters
$input = rtrim($input); // trim any trailing spaces.
fclose ($fr); // close the file handle
return $input; // return the text entered
}
?>
Вы отправили мне по почте об ImageMagick «дисплей».
Что вы можете сделать, это запустить «display» в фоновом режиме, а затем использовать «-remote» для отправки изображений и обновлений для отображения. Я сделал это с помощью сценариев оболочки под Linux, хотя я не думаю, что «отображение» работает аналогично для Windows.
Некоторые идеи о дистанционном управлении различными графическими программами смотрите в моих необработанных заметках (только для linux)
http://www.ict.griffith.edu.au/anthony/info/X/Image_Remote_Control.txt
Я закончил тем, что использовал команду «open», которая открывает изображение в «Preview»
Похоже, «qlmanage» также может быть вариантом. Я не мог заставить ImageMagick работать. Кажется, требуется установить X11, который не был включен в OS X в последних нескольких версиях. Страница поддержки Apple указывает на «xquartz» как сайт, с которого можно установить X11 на OS X. Я установил его, но после борьбы с его настройкой Imagemagick осмотрелся и обнаружил, что он «открыт». Спасибо