如何完全旋转图像。没有显示黑色部分

时间:2010-06-10 12:10:39

标签: php image gd

我有一张图片我必须将图像旋转25度。如果我旋转它显示一些黑色背景。我怎么能避免这种情况。如何使用PHP GD完全旋转图像而不显示黑色部分。我不能用js来轮换。因为我必须在旋转后将图像与另一个合并。任何团体都有这方面的脚本请帮助我。

1 个答案:

答案 0 :(得分:0)

黑色区域在旋转时是不可避免的 - PHP(和GD就此而言)不是Photoshop的内容感知填充,并且在旋转期间不会为您生成更多图片来掩盖黑色位。

你有两个选择:

  1. 做一些数学运算,找出你可以从旋转的图像切出的矩形大小,以消除黑色边框(例如:旋转后的图像将小于原始图像)

  2. 在旋转之前将原始图像放大,这样在旋转之后,您可以切出与原始非旋转尺寸相匹配的矩形块。再次,需要一些数学。

  3. 当然,这完全取决于你如何旋转图像。在角落上旋转会导致与在图像中心旋转的结果大不相同。