На этом месте находится расчудесная шапка. Включите flash - не пожалеете!

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Подгон размеров картинки, помогите рассчитать
Arcoslov
сообщение 27.4.2008, 9:58
Сообщение #1


Только зарегистрировавшийся


Группа: Пользователи
Сообщений: 8
Регистрация: 27.4.2008

Пользователь №: 13 888



Репутация:   0  


Здравствуйте. Помогите пожалуйста решить такую задачу:

Нужно, чтобы некоторая картинка отображалась в браузере по ширине на 70% экрана, а по высоте - пропорционально ширине. С шириной всё понятно- ставим width=70%. Но т.к. у всех разные мониторы и разные разрешения, эта самая ширина картинки в пикселях по идее будет разная, и вот сообразно ей нужно задать высоту картинке пропорционально изначальному размеру - в этом и прошу вашей помощи.
Заранее благодарен.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
liw
сообщение 27.4.2008, 10:38
Сообщение #2


Житель
***

Группа: Модераторы
Сообщений: 283
Регистрация: 2.11.2007

Пользователь №: 6 760



Репутация:   20  


Стандартный пример с php.net
Код
<?php
// The file
$filename = 'test.jpg';
$percent = 0.5;

// Content type
header('Content-type: image/jpeg');

// Get new dimensions
list($width, $height) = getimagesize($filename);
$new_width = $width * $percent;
$new_height = $height * $percent;

// Resample
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

// Output
imagejpeg($image_p, null, 100);
?>
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
NixoN
сообщение 27.4.2008, 11:38
Сообщение #3


Житель
***

Группа: Пользователи
Сообщений: 239
Регистрация: 14.3.2007

Пользователь №: 3 334



Репутация:   6  


ну а если вы хотите поставить простой html код, то это можно сделать так:
Код
<img src="img.jpg" width="80%" />
, и высота будет поставлена автоматически.


--------------------
Я не доллар чтобы всем нравится
Меня преследуют умные мысли, но я быстрее!
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Arcoslov
сообщение 27.4.2008, 14:11
Сообщение #4


Только зарегистрировавшийся


Группа: Пользователи
Сообщений: 8
Регистрация: 27.4.2008

Пользователь №: 13 888



Репутация:   0  


Ого, ну вы даёте. спасибо за ответы!

только у меня что-то неполучается. файл в директории лежит, всё есть, врое всё нормально, а он выдаёт ошибку:


Код
ошибка номер: 2 [Предупреждение]
описание ошибки: getimagesize(test.jpg): failed to open stream: No such file or directory
В строке:
$new_width = $width * $percent;


там дальше есть ещё ошибки, но давайте сначала с этим разберёмся.
liw, я чисто скопировал ваш код и ничего не менял. положил в директорию test.jpg и всё. Может, это я что не правильно делаю?

NixoN круто, но так - жить не интересно )
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
liw
сообщение 27.4.2008, 14:47
Сообщение #5


Житель
***

Группа: Модераторы
Сообщений: 283
Регистрация: 2.11.2007

Пользователь №: 6 760



Репутация:   20  


No such file or directory -> означает только то что файла test.jpg нет в папке скрипта )
и к тому же эта ошибка не может быть на строке $new_width = $width * $percent;
только в list($width, $height) = getimagesize($filename);
остальные ошибки берутся из первой.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Arcoslov
сообщение 28.4.2008, 7:44
Сообщение #6


Только зарегистрировавшийся


Группа: Пользователи
Сообщений: 8
Регистрация: 27.4.2008

Пользователь №: 13 888



Репутация:   0  


liw, Да, вы правы, именно в той строке, я ошибся. Но, тем не менее, файл то есть в директории..
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 8.9.2008, 19:08
Rambler's Top100 Яндекс цитирования