Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> не работает fixpng для сгенеренной картинки, генерю png в php но fixpng не пашет... 
:(
    Опции темы
Dave
Дата 17.3.2009, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Приветствую !
генерю png картинку средствами пхп с прозрачностью, сохраняю как png файл.
так как ИЕ 6 не умеет отображать png то пробую решить проблему с помощью fixpng (http://www.tigir.com/alpha_png.htm)
но для этой картинки фикс не работает почему то. Если же я png делаю в фотошопе то для нее фикс пашет, а для сгенеренной картинки - нет. Возможно дело в том что сгенеренный через php png файл является png8, а тот что сделал в фотошопе- png24. Хочу попробовать создать Png24 в пхп , но как ? 
ф-ю пока не нашел...


PM MAIL   Вверх
NNaarreekk
Дата 17.3.2009, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 768
Регистрация: 23.6.2007
Где: Армения

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



Dave, а этот сгенерированный ПНГ в остальных браузерах нормально показывается?
PM MAIL WWW   Вверх
nerezus
Дата 18.3.2009, 01:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


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

Репутация: 12
Всего: 43



Расширение скрипта .png то?

fixpng работает через данный селектор: input[@src$=.png]


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
Dave
Дата 18.3.2009, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Цитата

Dave, а этот сгенерированный ПНГ в остальных браузерах нормально показывается? 

Да

Цитата

Расширение скрипта .png то?

Да
Цитата

fixpng работает через данный селектор: input[@src$=.png] 

поподробнее можно  ? 

я уже применял fixpng но там png файлы были создани в фотошопе и они png24 , все прекрасно работает. 


Это сообщение отредактировал(а) Dave - 18.3.2009, 10:03
PM MAIL   Вверх
ksnk
Дата 18.3.2009, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Dave, Вообще-то IE6 умеет отображать png. Правда он считает, что они примерно то-же, что и GIF, и игнорирует альфа-канал. В png-8 никакого альфа-канала нету, так что никаких проблем с картинкой быть не должно и так. 
Чего не так показывается? образец картинки есть? Может прозрачность задана как-то кривовато...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Dave
Дата 19.3.2009, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



может что то не так делаю, 
пример сгенеренной картинки
user posted image
пхп код
Код

<?php 


$image = "bioshock.jpg";
$corner = 40; 

file_exists($image) or die("No such file: ".$image); //check if image exists before processing 

$dim = getimagesize($image); 
//dump($dim);
//create from type handle 
if($dim[2] == 2) $new = imagecreatefromjpeg($image); 
elseif($dim[2] == 1) $new = imagecreatefromgif($image); 
elseif($dim[2] == 3) $new = imagecreatefrompng($image); 
else die("Unsupported format: ".$dim[2]); 
//dump($dim);
//find colorcode 
$palette = imagecreatetruecolor($dim[0], $dim[1]); 
$found = false; 
while($found == false) { 
    
    $r = rand(0, 255); 
    $g = rand(0, 255); 
    $b = rand(0, 255); 
    
    if(imagecolorexact($new, $r, $g, $b) != (-1)) { 
        
        $colorcode = imagecolorallocate($palette, $r, $g, $b); 
        $found = true; 
            
    } 
    



imagearc($new, $dim[0]-$corner, $corner-1, $corner*2, $corner*2, 270, 0, $colorcode); 
imagefilltoborder($new, $dim[0], 0, $colorcode, $colorcode); 
imagecolortransparent($new, $colorcode); //make corners transparent 

imagepng($new,'upload/test.png');
imagedestroy($new); 

?>


PM MAIL   Вверх
ksnk
Дата 23.3.2009, 01:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Судя по информации о картинке - это png-24. C ним вполне прилично справляется fixpng.
Код

<!--[if lt IE 7]>
<![if gte IE 5.5]>
<script type="text/javascript" src="js/fixpng.js"></script>
<style type="text/css">
.iePNG { filter:expression(fixPNG(this)); }
</style>
<![endif]>
<![endif]-->
<img class="iePNG" src="ddbf0861c326a8d3b85f76830c44.png">




--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

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


 




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


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

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