|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.07.2009, 02:27 | #1 |
Пользователь
Регистрация: 22.07.2009
Сообщений: 95
|
показ части изображения
привет всем помогите решить проблему.
надо сделать скрипт на пхп или перле которой принимает 2 значения х и у и из картинки на сервере по координатам вырезает кусок картинки постоянной длинны и ширины и отправляет в браузер. (короче в браузерной онлайн игре карту выводит) пробовал на пхп сделать с помощью imagecopyresized() но она слишком долго работает, imagecopyresampled() ещё дольше а при размере изображения в 50+Mb вообще перестают работать. может перл больше подойдёт для такого? или лучше самому написать всю функцию вырезания изображения? и если писать то на чём лучше перл или пхп какой быстрее работает? |
22.07.2009, 11:47 | #2 |
Старожил
Регистрация: 09.09.2008
Сообщений: 2,624
|
Выхода у Вас практически нет...
1)Если php то только gd - очень быстрая и лёгкая библиотека, если в gd всё плохо то врядли где-то будет намного лучше. 2)50mb! - Вы наверное не работали с графикой. Изображение для обработки надо поместить в оперативную память, причем несжатое изображение, и оно не влезет в оперативку... Если ваше изображение не в .bmp формате переведите его в этот формат и увидите сколько оно будет занимать оперативки минимум (тк и bmp может быть сжатым). Сейчас я работаю с высоконагруженными системами и советую разбить карту на части заранее, чтобы система обращалась к статике.
Стрелок-охотник
|
22.07.2009, 15:17 | #3 |
Пользователь
Регистрация: 22.07.2009
Сообщений: 95
|
чтобы всё работало как задумано мне надо или придумать как быстро обрабатывать изображение или разрезать всё изображение на клетки 36х36
изображение само примерно 10000 на 10000 пикселей я не работал раньше с графикой но думаю gd тормозит из за того что сначала переводит изображени из png/gif/jpeg в бмп потом вырезает кусок а потом ещё и вычисляет нужный масштаб. Я хочу попробовать взять bmp картинку и просто прочитать из неё нужные байты а потом отправить их в браузер. щас пойду думать как это написать. может кто что нибудь подсказать? |
22.07.2009, 16:28 | #4 |
Старожил
Регистрация: 25.02.2007
Сообщений: 4,160
|
чето изначально неверный подход.....предлагаю следующий алгоритм:
1. ваше изображение огромное в цикле по x и y разбиваем на ваши квадраты (отрабатывает 1 раз... потом не используется) 2. данные квадраты сохранять файлами с именами например map2_4.gif (где 2 и 4 - координаты данного квадрата) 3. пишем скрипт который принимая значения x,y показывает данный файл |
22.07.2009, 17:36 | #5 |
Пользователь
Регистрация: 22.07.2009
Сообщений: 95
|
о точно программой разбить всё изображение на квадраты а потом их использовать.
спасибо за совет. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Показ части изображения | Alex Cones | Мультимедиа в Delphi | 3 | 12.06.2009 22:15 |
Показ всех имен файлов в каталоге[Delphi] | sergey31 | Помощь студентам | 2 | 27.07.2008 16:43 |
Чтение изображения из базы данных, Вместо изображения - "System.Byte[]" | ruelCrow | Общие вопросы .NET | 3 | 10.07.2008 23:29 |
Показ картинок, как реализовать. | Zeraim | Мультимедиа в Delphi | 18 | 21.05.2008 09:29 |
Выделение части изображения | Luboff | Помощь студентам | 1 | 26.11.2007 08:07 |