Показать сообщение отдельно
  #14 (permalink)  
Старый 01.04.2009, 22:31
Новичок на форуме
Отправить личное сообщение для Valentin Gvozdev Посмотреть профиль Найти все сообщения от Valentin Gvozdev
 
Регистрация: 01.04.2009
Сообщений: 3

Сталкивался примерно с той же самой проблемой - писал функцию просмотра фоток, где нужно было уместить фотку произвольного размера в отведенное место. Простое принудительное указание width не проходило - т.к. фотки могли быть разных пропорций, а в случае маленьких изображений происходил бы принудительный апскейлинг, что не есть хорошо.

Т.е. нужно было посмотреть ее реальный размер, вычислить коээфициент уменьшения, и если он >1, то уменьшить размер картинки - вроде бы все просто. Однако несмотря на примитивность задачи, долбался я очень долго - в зависимости от ситуации width получался либо 1, либо соответсвовал предыдущей загруженной картинке, либо еще как (а порой и соотвествовал тому, что надо, но было это совершенно непредсказуемо).
Проблема решилась очень просто. Все вычисления пришлось выполнять в функции, вызываемой по onload картинки. Только так удалось добиться того, что значения ее размеров в свойстве width соответсвуют реальности вне зависимости от браузера, скорости соединения итд. Уверен, что и вашем случае такое пройдет.
Удачи!

Валентин
http://vgvozdev.narod.ru

Последний раз редактировалось Valentin Gvozdev, 01.04.2009 в 22:54.
Ответить с цитированием