php获取资源,PHP-如何从图像资源获取图像数据?

我正在使用Microsoft Azure云,需要在那里上传图像.它的类上载方法putBlob()和putBlobData()需要数据本身(而不是资源)或目录字符串作为参数,在将图像实际写入Blob之前,这些参数都不可用.

$fp = fopen($tmp_name, 'r');

$data = fread($fp, filesize($tmp_name));

fclose($fp);

//Setup watermark destination

$new_watermarked_image_name = "watermark.jpg";

// Create image resources

$image = imagecreatefromstring($data);

$watermark = imagecreatefrompng('images/watermark_large.png');

$copyright = imagecreatefrompng('images/copyright.png');

// Merge image resource s

$image = overlay_watermark_full_size($image, $watermark);

$image = overlay_watermark_lower_right($image, $copyright);

imagejpeg($image, $new_watermarked_image_name, 100);

//put original image

$AzureStorageBlob->putBlob("uploads", "name", $tmp_name);

//put watermarked image

$AzureStorageBlob->putBlobData("uploads", "name", ?); // ? needs to be data

解决方法:

您需要使用ob_start捕获缓冲区,例如:

ob_start();

imagejpeg($tmp_img);

$i = ob_get_clean();

$i是您的图像斑点

标签:azure,upload,php

来源: https://codeday.me/bug/20191101/1982049.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值