Монтаж или коллаж с библиотекой GD - PullRequest
3 голосов
/ 07 января 2011

Я пытаюсь создать таблицу миниатюр, например, 100 миниатюр 10x10 с помощью библиотеки GD. Я видел, что в imagemagick есть функция монтажа, которая, вероятно, будет полезна, но мне интересно, может ли библиотека GD сделать это тоже.

Я подумал, что, возможно, смогу сделать это, просто выведя все изображения в простую HTML-таблицу и преобразовав эту таблицу в изображение, но, похоже, это невозможно. Любая помощь или предложения?

Ответы [ 2 ]

3 голосов
/ 07 января 2011

Это, безусловно, возможно. Вы можете изменять размеры изображений, а также копировать изображения в другое изображение с помощью GD. Чтобы узнать больше об изменении размера, проверьте эту функцию изменения размера, которую я сделал: http://www.spotlesswebdesign.com/blog.php?id=1

Но допустим, что ваши изображения уже изменены до 10x10, и у вас есть массив, заполненный 100 URL, что приводит к разным 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);
1 голос
/ 07 января 2011

GD не может этого сделать.Почему бы просто не использовать imagemagick?

EDIT: GD может сделать это, но вам придется делать это вручную, нет функции GD, сравнимой с монтажом imagemagick.

...