Symfony2'de görüntü yeniden boyutlandırma için bir komut dosyası yapıyorum. Görüntüyü string'e dönüştür (Symfony2 Response için)
Ben standart Symfony2 tepki sistemini kullanabilmek için istiyorum gibi
...$headers = array('Content-Type' => 'image/png',
'Content-Disposition' => 'inline; filename="image.png"');
return new Response($img, 200, $headers); // $img comes from imagecreatetruecolor()
... Bir tepki olarak göndermek için bir dize gerekir. Ne yazık ki, imagepng
gibi işlevler sadece dosyaları yazabilir veya doğrudan tarayıcıya gönderir, dizeleri döndürmez.
Bugüne kadar sadece çözümler ben
1] geçici bir konuma görüntüyü kaydetmek vardır düşünmek ve sonra
imagepng($img, $path);
return new Response(file_get_contents($path), 200, $headers);
2] kullanmak çıkış tamponlama
ob_start();
imagepng($img);
$str = ob_get_contents();
ob_end_clean();
return new Response($str, 200, $headers);
tekrar okumak başardı
Daha iyi bir yolu var mı?
:
BTW bir eksik işlevini çağırabilirsiniz. Bence her türlü görüntü manipülasyonu için gerçekten güzel bir paket. Sadece tek bir filtre (küçük resim oluşturma) ile birlikte gelse de, kendi paketlerinizi yazabilirsiniz. Sadece seninle olanı paylaşacağımı düşündüm :) – gilden
@gilden, Şuna bir bakacağım, teşekkürler! – Czechnology