2016-05-05 4 views
1

Я использую библиотеку Cropper.js для получения координат и ширины и высоты изображения на стороне клиента и вмешательства в laravel 4, чтобы на самом деле собрать его на стороне сервера с corp данные.заполнить дополнительную область с пользовательским цветом при обрезке с помощью Cropper.js

JavaScript функция:

$('#image').cropper({ 
      aspectRatio: 16/9, 
      crop: function (e) { 
       // To send cop data to server 
       x = e.x; 
       y = e.y; 
       width = e.width; 
       height = e.height; 
       rotate = e.rotate; 
       scaleX = e.scaleX; 
       scaleY = e.scaleY; 
       $('#x').val(x); 
       $('#y').val(y); 
       $('#width').val(width); 
       $('#height').val(height); 
       $('#rotate').val(rotate); 
       $('#scaleX').val(scaleX); 
       $('#scaleY').val(scaleY); 
      } 
     }); 

PHP/Laravel Функция:

$img->crop($width, $height, $x, $y); 

Когда обрезается область из изображения, эта дополнительная зона автоматически заполнены черным цветом. Я хочу, чтобы он был заполнен белым цветом.

Image cropping with area out of Image

Это создает этот образ

The Image Generated from the above cropping

Я хочу изменить черный цвет на белый.

ответ

0

Вам необходимо сочетание команд в интервенции:

  1. Создать холст на правильный размер
  2. Заполните его цветом с заливкой()
  3. использование вставки(), чтобы поместить изображение

Таким образом, вы бы что-то вроде этого (не проверено)

$destination = Image::canvas($width, $height); 
$destination->fill('#ffffff'); 
$destination->insert($img, $x, $y);