我有很多图片需要批量缩放然后添加Logo(本来看起来需要半透明添加上去的)导入到网站中去的,而且这是一个长期的过程,因此我希望做一个有界面的东西来完成这个工作,用户可以选择指定文件夹,Logo标志等,因此,我用Java做了。大致的东西都搞定了,就是半透明效果在Java中貌似没有什么好的方法实现。。。。我想问问各位大佬,Java中那个类的方法对应于PHP gd中的
如下的代码是我的想法的PHP实现:RGB只用了24bit,而都所谓32位真彩色,因此我猜测alpha设在 25 ~ 32 bit,所以下面的代码中直接通过位移操作来设置alpha通道
<?php
$liuyifei = imagecreatefromjpeg('D:\lyf.jpg');
$wo = imagecreatefromjpeg('D:\wo.jpg');
//把我以透明度 $alpha 画到刘亦菲图片的 $offsetX, $offsetY上
$offsetX = 500;
$offsetY = 300;
$alpha = 80;
$wo_Width = imagesx($wo);
$wo_Height = imagesy($wo);
for ($i = 0; $i < $wo_Height; $i ++)
{
//图片的行循环
for ($j = 0;$j < $wo_Width; $j++)
{
//图片了列循环
$colorAtWo = imagecolorat($wo, $j, $i);
//$colorAtLiuYIfei = imagecolorat($liuyifei, $offsetY + $j, $offsetX + $i);
//添加透明度
$colorAtWoNew = ($colorAtWo | $alpha << 24);
imagesetpixel($liuyifei, $j + $offsetX, $i + $offsetY, $colorAtWoNew);
}
}
header('Content-Type: image/jpeg');
imagejpeg($liuyifei, null, 100);