Монтаж или коллаж с библиотекой GD
Вопрос
Я пытаюсь создать таблицу миниатюр, например, 100 миниатюр 10х10 с библиотекой GD. Я видел, что ImageMagick имеет функцию монтажа, которая, вероятно, была бы полезной, но мне интересно, если библиотека GD также может сделать это.
Я думал, что смогу сделать это, просто вывод всех изображений в простом HTML-таблице и преобразование этой таблицы на изображение, но, похоже, это может быть невозможно. Любая помощь или предложения?
Решение
Это наверное возможно. Вы можете изменить размер изображения, а также копировать изображения в другое изображение с помощью GD. Чтобы узнать больше о размерах, проверьте эту функцию изменений, которые я сделал: http://www.spotlesswebdesign.com/blog.php?id=1.
Но скажем, ваши изображения уже изменяются в 10x10, и у вас был массив, заполненный 100 URL-адресами, ведущими к разным GIFS 10x10.
$montage_image = imagecreatetruecolor(100, 100);
$x_index = 0;
$y_index = 0;
foreach($array_with_100_10x10_gif_urls as $gif_image_url) {
$current_image = imagecreategif($gif_image_url);
imagecopy($montage_image, $current_image, $x_index * 10, $y_index * 10, 0, 0, 10, 10);
imagedestroy($current_image);
$x_index++;
if ($x_index > 9) {
$x_index = 0;
$y_index++;
}
}
// place code for saving the montage image as a file or outputting to teh browser here.
imagedestroy($montage_image);
Другие советы
ГД не может сделать это. Почему бы не просто использовать ImageMagick?
РЕДАКТИРОВАТЬ: GD может сделать это, но вам придется сделать это вручную, нет функции GD, сравнимой с монтаж ImageMagick.