Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: библиотека GD
 
 автор: jackson   (29.05.2007 в 11:18)   письмо автору
 
 

Никто никогда не пробовал открывать формат png,jpeg и др. аналогичные форматы блокнотом? В блокноте тогда очень много разных крякозябриков...Так вот, при попытке работате с библиотекой GD, пытаясь создать картинку на лету, в браузере получаю вот такие же крякозябрики... причем идентичные тем, которые в блокноте. Я пользуюсь сервером Apach. Может где то нужно подключать библиотеку? И вооще, кто что об этом думает???
Заранее благодарен за помощь!

   
 
 автор: mefestofel   (29.05.2007 в 11:23)   письмо автору
 
   для: jackson   (29.05.2007 в 11:18)
 

Ну как водится, показывайте свой код...

   
 
 автор: Jackson   (29.05.2007 в 11:29)   письмо автору
 
   для: mefestofel   (29.05.2007 в 11:23)
 



<?php

$im 
imagecreatefrompng("d:/1/1.png");
$or imagecolorAllocate($im,22,210,60);
$var 480;
$i 0;
   for (
$i 0$i <= $var$i++)
   {
      
imagesetpixel($im,320,$i,$or);
      
imagesetpixel($im,$i,240,$or);
   }



imagepng($im);
imagedestroy($im);
?>

   
 
 автор: mefestofel   (29.05.2007 в 11:32)   письмо автору
 
   для: Jackson   (29.05.2007 в 11:29)
 

правьте функцию imagepng(), чтобы вывсети в файл или думайте над
MIME-тип: image/png

   
 
 автор: mefestofel   (29.05.2007 в 11:29)   письмо автору
 
   для: jackson   (29.05.2007 в 11:18)
 


bool imagepng ( resource image [, string filename [, int quality]] )

Думаю Ваша беда скрывается в этой функции
второй параметр - вывод в файл...
если он не указан, то вы получаете вывод в браузер, а вот почему не картинка а так называемый набор символов(Ваш аналог), подумайте сами, так интереснее, отправная точка - HTML

   
 
 автор: Trianon   (29.05.2007 в 11:36)   письмо автору
 
   для: jackson   (29.05.2007 в 11:18)
 

пытаясь создать картинку на лету, нужно не забывать указывать тип документа.
За Вас это никто не сделает. Никакая GD.

   
 
 автор: Jackson   (29.05.2007 в 12:00)   письмо автору
 
   для: Trianon   (29.05.2007 в 11:36)
 

Как указать тип документа??? пытаюсь через header("content-type: image/png"), не получаестя... Может это тут ни причем?

   
 
 автор: Trianon   (29.05.2007 в 12:06)   письмо автору
 
   для: Jackson   (29.05.2007 в 12:00)
 

именно так.
Что не получается?

   
 
 автор: Trianon   (29.05.2007 в 12:07)   письмо автору
 
   для: Jackson   (29.05.2007 в 12:00)
 

Или Вы пытаетесь через IE смотреть?
IE с png не дружит....

   
 
 автор: Jackson   (29.05.2007 в 12:27)   письмо автору
 
   для: Trianon   (29.05.2007 в 12:07)
 

Попытался через оперу, тоже не показывает... Но уже получилось записать картинку в файл....Но все таки хотелось бы вывести ее в браузере.

   
 
 автор: Trianon   (29.05.2007 в 12:29)   письмо автору
 
   для: Jackson   (29.05.2007 в 12:27)
 

как выглядит скрипт?
Какие первые три байта в файле со скриптом?

   
 
 автор: Jackson   (29.05.2007 в 12:46)   письмо автору
 
   для: Trianon   (29.05.2007 в 12:29)
 

Вы имеете ввиду скрипт, который с картинкой работает? Он выше, но я тут нмного поигрался, вот так он выглядит. Кстати, опера написала в квадратике "Рисунок", но не отображает его. даже если правая кнопка мыши-отобразить рисунок...

<?php
$filename
="d:/1/2.png";
//$im = imagecreatefrompng("d:/1/1.png");
$im=imagecreate(640,480);
$or imagecolorAllocate($im,220,220,220);
$or1 imagecolorAllocate($im,22,22,22);
$var 480;
$i 0;
   for (
$i 0$i <= $var$i++)
   {
      
imagesetpixel($im,320,$i,$or1);
      
imagesetpixel($im,$i,240,$or1);
   }


header("content-type: image/png");
imagejpeg($im/*,$filename*/);
imagedestroy($im);

   
 
 автор: Jackson   (29.05.2007 в 12:49)   письмо автору
 
   для: Jackson   (29.05.2007 в 12:46)
 

И еще в браузере выкидывает ошибку : Warning: Cannot modify header information - headers already sent by (output started at C:\apachefriends\xampp\htdocs\1.php:9) in C:\apachefriends\xampp\htdocs\1.php on line 24

   
 
 автор: cheops   (29.05.2007 в 12:50)   письмо автору
 
   для: Jackson   (29.05.2007 в 12:49)
 

Что находится в 9 строке файла 1.php?

   
 
 автор: Jackson   (29.05.2007 в 12:55)   письмо автору
 
   для: cheops   (29.05.2007 в 12:50)
 

Хм...просто "<?php"....что это значит?

   
 
 автор: Faraon   (29.05.2007 в 12:58)   письмо автору
 
   для: Jackson   (29.05.2007 в 12:55)
 

До header ничего в браузер выводить нельзя, и перед <?php не должно быть пробела или пустой строки

   
 
 автор: Jackson   (30.05.2007 в 14:43)   письмо автору
 
   для: Faraon   (29.05.2007 в 12:58)
 

Выкрутился - записал картинку в файл, потом написал дополнитеьный код, который просто выводит эту картинку простым <img src="">. А на картинке мне нужно было нарисовать график по точкам, взятым из файла. Все рисует замечательно, только вот теперь ломаю голову над обозначением масштаба. Всем спасибо за помощ.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования