Итак, у меня есть странная проблема с использованием библиотеки GD внутри Laravel. Я могу сохранить файл правильно. Base64_encode возвращает правильное изображение. Но я не могу за свою жизнь заставить его показать в браузере. В моей TestController у меня есть следующие:GD Library - Не удается выполнить вывод в браузер (Laravel)
<?php
namespace App\Http\Controllers;
use App;
use Response;
class TestController extends Controller
{
public function index()
{
$test = imagecreatetruecolor(300, 300);
$background = imagecolorallocate($test, 0, 0, 0);
imagefill($test, 0, 0, $background);
ob_start();
imagepng($test);
$buffer = ob_get_contents();
imagedestroy($test);
ob_end_clean();
$response = Response::make($buffer);
$response->header('Content-Type', 'image/png');
return $response;
}
}
Это просто возвращает разбитое изображение.
Консоль показывает правильные заголовки. Я вытягиваю свои волосы ...
На самом деле я получаю черный квадрат с кодом. Можете ли вы дать нам полный код действия контроллера? – zorx
Вот именно то, что я ищу. Я использую усадьбу Laravel (4.0), которая поставляется с предустановленной GD. Будет обновлен код. –
Вы должны упомянуть, что вы используете laravel 4.0 (потому что я тестировал его на 5.2) – zorx