【问题标题】:PHP/GD image mapping/texturingPHP/GD 图像映射/纹理
【发布时间】:2011-01-12 06:33:26
【问题描述】:

我正在尝试创建类似于:http://winmap.active-online.de/kler/pol/index.php3?room_name=200D 的产品配置器 我想将纹理或颜色放在不同的图像元素上,然后将它们组合成一个结果图像。

我正在尝试这样使用:

  header('Content-Type: image/jpeg');

$poszycie = imagecreatefrompng('poszycie.png');
$tekstura = imagecreatefrompng('tekstura.png'); 
//imagefilter($poszycie,IMG_FILTER_EMBOSS);
//imagepng($tekstura);

//$bcg = imagecreatefromjpeg('las.jpg');
//$img = imagecreatefromjpeg('zdjecie.jpg');

//imagecopymerge($poszycie, $tekstura, 0, 0, 0, 0, imagesx($poszycie), imagesy($poszycie), 75);
//imagepng($poszycie, null, 100);

imagecopymerge($poszycie, $tekstura, 0, 0, 0, 0, imagesx($poszycie), imagesy($poszycie), 50);

imagepng($poszycie);

但结果是:http://saveur.pl/testgd/configurator.png

感谢您的帮助。

【问题讨论】:

  • 非英文变量名...不好

标签: php image gd


【解决方案1】:

我认为使用 ImageMagick 会更好。例如,您可以使用这些技巧 http://www.imagemagick.org/discourse-server/viewtopic.php?f=2&t=14513&start=15,我相信在网络上搜索 imagemagick texture image area 会发现更多想法。

无论如何,您都必须拆开图像并使用 Alpha 通道。

【讨论】:

    【解决方案2】:

    我认为我对this question 的回答会有所帮助。问题与 alpha 通道有关。此外,您应该发送此标头(png 而不是 jpeg):

    header('Content-Type: image/png');
    

    因为你打电话

    imagepng($poszycie);
    

    这可能是另一个麻烦的原因。

    【讨论】:

      猜你喜欢
      • 2020-01-08
      • 1970-01-01
      • 1970-01-01
      • 2014-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多