0

我正在尝试让 Galleria 显示一组动态图像 - 动态是指图像是由 PHP 脚本在运行时创建的。有问题的 PHP 脚本实际上需要两张图像(一张照片,另一张我想用作水印来保护图像)并将它们合并在一起。

因此,我在 Galleria div 中的图片链接已从以下内容移出:

<a href="images/upload/1024_<?php echo $row_rstImages['image_filename']; ?>"> <img title="<?php echo $row_rstImages['image_title']; ?>"
alt="<?php echo $row_rstImages['image_description']; ?>" 
src="images/upload/100_<?php echo $row_rstImages['image_filename']; ?>"> </a>

效果很好,对此:

<a href="inc_create_image_wm_gallery.php?s=1024&i=<?php echo $row_rstImages['image_id']; ?>"> <img title="<?php echo $row_rstImages['image_title']; ?>"
alt="<?php echo $row_rstImages['image_description']; ?>" 
src="images/upload/100_<?php echo $row_rstImages['image_filename']; ?>"> </a>

您可能会确定,脚本“inc_create_image_wm_gallery.php”有两个参数,输出大小(s)和数据库中相关条目的图像ID(i)。

上面第二个版本的结果是 Galleria 显示的是缩略图版本(100 像素宽版本),而不是我想要的 1024 像素版本。

PHP 脚本设置了适当的标头 (header('content-type: image/jpeg');),当我在浏览器中使用 URL 中的适当参数单独尝试脚本时,它会完全按照我的预期输出带水印的图像。

任何想法为什么它可能会对 Galleria 产生如此不利的影响?

4

1 回答 1

1

这是因为 Galleria 在 href 中检测到文件结尾。要强制 Galleria 接受任何 href 作为图像文件(包括 .php 后缀),请尝试以下操作:

$('#galleria').galleria({
    dataConfig: function(img) {
        return {
            image: $(img).parent().attr('href')
        }
    }
});
于 2011-06-16T10:14:23.020 回答