Модераторы: ginnie, korob2001
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как узнать размер картинки в скаляре с помощью Ima, по-моему нужна ссылка на данные в памяти 
:(
    Опции темы
everyone
  Дата 3.10.2004, 17:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 218
Регистрация: 24.3.2004

Репутация: 1
Всего: 4



Нужно определить размер картинки, которая ещё не сохранена на диске. Для этих целей я взял модуль Image-size. Определить размер сохранённого файла и узнать его тип можно одной строкой:
Код
($x, $y, $id) = img_size("путь к файлу");


Но наткнулся на ситуацию, когда от размера картинки зависит - сохранять её на диск или нет. Если подставить в img_size как аргумент - скаляр с содержанием файла(картинки), то модуль никак не реагирует.

В документации я нашёл любопытные строчки:

Код

 use Image::Size;
   # Get the size of an in-memory buffer
   ($buf_x, $buf_y) = imgsize(\$buf);
   # Assuming that $buf was the data, imgsize() needed a reference to a scalar


По-моему скаляр должен являться ссылкой на данные в памяти, но даже если так, то как её найти?
И по английски читаю через слово smile.gif). Может кто знает как это провернуть?
--------------------
Что написал, то написал (Пилат)
PM ICQ Skype   Вверх
chaos
Дата 7.10.2004, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

Репутация: 3
Всего: 44



Если что то
Код
\$buf
это и есть ссылка на $buf

Это сообщение отредактировал(а) chaos - 7.10.2004, 12:51
PM WWW   Вверх
ElectricalStorm
Дата 7.10.2004, 14:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 547
Регистрация: 22.1.2004

Репутация: 1
Всего: 9



Вот так

Код

($width, $height) = Image::Size::imgsize(\$buffer);



--------------------
Нужно знать инструмент, которым пользуешься
PM MAIL   Вверх
everyone
Дата 13.10.2004, 18:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 218
Регистрация: 24.3.2004

Репутация: 1
Всего: 4



Интересно, почему раньше не получалось ? stena.gif
--------------------
Что написал, то написал (Пилат)
PM ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: Системное программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к системному программированию на Perl
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0590 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.