如何使用Laravel在其他图像中添加图像(框架)

时间:2019-08-05 20:23:57

标签: php laravel image

我想使用Laravel为图像添加框架。 例如,我有两张图像,一个图像是png框架,另一个是原始图像。

我需要将两者放在一起以形成带有框架的图像。

这是我的框架。


我的目标是可以在任何图像上放置框架。

3 个答案:

答案 0 :(得分:1)

您可以使用带有merge-image软件包的JavaScript轻松地将图像合成在一起。

具有以下图像:

  • /body.png

  • /eyes.png

  • /mouth.png

您可以这样做:

import mergeImages from 'merge-images';

mergeImages(['/body.png', '/eyes.png', '/mouth.png'])
  .then(b64 => document.querySelector('img').src = b64);
  // data:image/png;base64,iVBORw0KGgoAA...

这将更新img元素以显示此图像:

答案 1 :(得分:0)

这更多是关于css和html问题的  顺便说一句,您可以在CSS的border-image属性中执行此操作 HTML

<img src="https://images.unsplash.com/photo-1565013161635-98472edee347?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=750&q=80" width="50%" id="borderimg1">

CSS

#borderimg1 { 
  border: 10px solid transparent;
  padding: 15px;
  -webkit-border-image: url(border.png) 30 round; /* Safari 3.1-5 */
  -o-border-image: url(border.png) 30 round; /* Opera 11-12.1 */
  border-image: url(border.png) 30 round;
}

**Result**

enter image description here

答案 2 :(得分:0)

此线程中已经有一些出色的客户端方法,但是如果您想在服务器端进行操作,the popular Intervention Image package很方便,并且可以与Laravel一起使用。

如果图像大小不同,则必须进行一些调整大小的数学运算,但是从根本上讲,您希望insert method覆盖一个图像。

// create new Intervention Image
$img = Image::make('public/foo.jpg');

// paste another image
$img->insert('public/bar.png');

// create a new Image instance for inserting
$watermark = Image::make('public/watermark.png');
$img->insert($watermark, 'center');

// insert watermark at bottom-right corner with 10px offset
$img->insert('public/watermark.png', 'bottom-right', 10, 10);