Загруз центр для JohnCMS 5 by Simba

23.38K
.
А вот при просмотре файла
Прикрепленные файлы:
.
Think different
# MAH9IK (14.05.2015 / 18:29)
Folour, Тогда,вопрос, чему в списке файлов картинка отображается нормально?
Только я использовал image resize от Koenig для вывода картинки на главной и в списке
Я уже раз пять сказал почему так.
.
(\/)____o_O____(\/)
# Folour (14.05.2015 / 17:25)
Я тестировал на этой картинке вот таким кодом
header('Content-type: image/png');
imagepng(imagecreatefrompng('1.png'));

- результат такой же. Тут даже обработки нет никакой
через класс свой тестанул, норм, там сначала преобразование ресурса в картинку происходит, и через наложение на новый холст, с прозрачностью
качество пострадало, но с прозрачностью все норм
Прикрепленные файлы:
.
Folour
Think different
Koenig, Чет не пойму, как ты картинку тогда в gd загружаешь? Версия gd какая?
.
(\/)____o_O____(\/)
Folour,
<?php
  class Kimage 
{
    private $image, $width, $height;
    
    public function __construct($image) {
        if (file_exists($image)) {
            $image = file_get_contents($image);
        } elseif (substr($image, -2) == '==' || substr($image, -1) == '=') {    // TODO: skl;djf
            $image = base64_decode($image);
        } elseif (substr($image, 0, 4) == 'http') {
            if (list(, , $type) = getimagesize($image)) {
                $upload = new SplFileObject($image, 'rb');
                $image = '';
                while (!$upload->eof()) {
                    $image .= $upload->fgets();
                }
            } else {
                return false;
            }
        } else {
            throw new Exception('Unsupported image type');
        }
        $this->image = imagecreatefromstring($image);
        $this->setSizes();
        $newimg = imagecreatetruecolor($this->width, $this->height);
        $black = imagecolorallocate($newimg, 0, 0, 0);
        imagefill($newimg, 0, 0, $black);
        imagecolortransparent($newimg, $black);
        imagecopyresampled($newimg, $this->image, 0, 0, 0, 0, $this->width, $this->height, $this->width, $this->height);
        $this->image = $newimg;                                                                      
    }
    
    public function base64($resource = null) {
        ob_start();
        imagepng($resource ? $resource : $this->image, null, 9, PNG_ALL_FILTERS);
        $temp = chunk_split(base64_encode(ob_get_contents()));
        ob_clean();

        return trim($temp);
    }
    
    public function setSizes() {
         $this->setWidth();
         $this->setHeight();
         
         return $this;
    }
    
    public function setWidth() {
        $this->width = imagesx($this->image);
        
        return $this;
    }
    
    public function setHeight() {
        $this->height = imagesy($this->image);
        
        return $this;
    }
    
}

require_once('kim.php');

$a = new Kimage('test.png');

echo '<img src="data:image/png;base64,' . $a->base64() . '" alt="base64_image" />';
.
(\/)____o_O____(\/)
Folour, 1111111111
Прикрепленные файлы:
.
Think different
imagecreatefromstring тоже делал, также выходило.
.
(\/)____o_O____(\/)
Folour, я на опенсервере тестил, у тебя мой код тоже черноту дает?
.
Think different
Koenig, 12345
Прикрепленные файлы:
.
Folour
Think different
# Koenig (14.05.2015 / 20:07)
Folour, я на опенсервере тестил, у тебя мой код тоже черноту дает?
ща проверю
------
Нет, также как у тебя. С испорченным качеством, но не размазанная.
Всего: 1313