我想用PHP将一张图片合成到另一张图片上去,但是要倾斜一定角度,像下 ...
发布网友
发布时间:2022-04-26 15:13
我来回答
共2个回答
热心网友
时间:2022-04-06 04:42
1L方法太先进了 - -
使用PHP的GD库应该可以得到LZ想要的效果,这里给思路吧,具体代码需完善不少方面,实在没时间研究啊 - -
//-----------------------------------------------------------------------------------------
header('Content-type:image/jpeg');
$imageDestination = 'images/dst.jpg'; //主视图,也就是白云飘飘这张主图
$imageSource = 'images/src.png' //复制并需旋转的小图
$imageSource = imagerotate($imageSource, -25, -1); //把小图向右旋转25°,-1就是不填充颜色到旋转后的空白部分,大概就是透明吧
/*
把旋转后的小图复制到大图上
30, 50就是旋转后小图在大图上的位置
0, 0是从旋转后小图的左上开始复制
这样一直复制到imagesx($imageSource), imagesy($imageSource),就是把旋转后小图完整复制到大图了
*/
imagecopy($imageDestination, $imageSource, 30, 50, 0, 0, imagesx($imageSource), imagesy($imageSource));
imagejpeg($imageDestination); //输出图片
//-----------------------------------------------------------------------------------------
当然,上面只是一个草稿式的代码,具体还要考虑大小图的类型,旋转小图后其尺寸,定位旋转后小图坐标,还有图片的真彩色、透明等等问题,所以说还得花点心思才能把功能写好。
希望能帮到你,满意请采纳~~
参考资料:个人
热心网友
时间:2022-04-06 06:00
使用滤镜transform属性使对象旋转,示例如下::
假设<div id="pic>...</pic>,则定义css如下:
#pic {
background-image: url(pic.jpg);
background-repeat: no-repeat;
-o-transform: rotate(25deg); /* Opera浏览器 */
-webkit-transform: rotate(25deg); /* Webkit内核浏览器 */
-moz-transform: rotate(25deg); /* Firefox浏览器 */
}