【问题标题】:Revealing an image bit by bit?一点一点地揭示图像?
【发布时间】:2010-11-10 13:18:50
【问题描述】:

我正在努力做到这一点,每当有人在页面上捐赠一定数量时,就会显示图像的另一相等部分。我已经搞定了大部分其他逻辑(PayPal 提供了很好的独特的“您已捐赠”标识符等),但是,我在一点一点地显示图像时遇到了麻烦。

我尝试将图像分成小块(在图像完全显示之前,人们希望至少获得 250 份捐款),但是由于多个格式图像,这不起作用。有没有更好的方法(比如 PHP 图像处理或者 CSS/Javascript)?

【问题讨论】:

  • 这听起来很像这些伪色情酒杯,当杯子变热时(即,当你喝冷饮时)会露出这位女士 :-) 请告诉我不是这样.
  • 我认为世界不再需要百万像素的广告狂潮。
  • 这不是百万像素的广告垃圾邮件盛会,这是肯定的。 :) @Pax 呃,它在概念上很相似,但它不是色情

标签: php image image-processing donations


【解决方案1】:

您为什么不创建 251 个静态图像,每个支付级别一个,并根据迄今为止收到的资金比例动态提供正确的静态图像。

这似乎是最简单的方法,唯一需要的代码是查询支付级别,并将相关图像发送给客户端。

所以有一个image0.jpg(空)、image1.jpg(一个段)、image2.jpg 等等,直到image250.jpg(所有段),并让您的 Web 应用程序提供正确的一个。

您需要确保这些图片无法在您网站的公共区域中访问,这样人们就不能仅仅找出 URL 并窃取您的“珍贵”。

因此,您的 Web 应用程序将收到对 images/image.jpg 的请求,查询应该发送哪个图像,并使用来自实际图像的数据流进行响应,例如:

if actual > desired:
    number = 250
else:
    number = int (actual * 250 / desired)
imagename = "image" + str(number) + ".jpg"

【讨论】:

  • 嘿,这实际上可能工作得很好。有时你永远不会想到最简单的事情。 :) 可能的最佳答案。
【解决方案2】:

您可以将图像隐藏在<div> 中,并将溢出设置为hidden。然后,当您收到更多捐款时,您可以简单地使 div 元素更高。

<div id="imageContainer">
   <img src="secretImg.jpg"/>
</div>

CSS:

#imageContainer {
   height: 20px;
   overflow: hidden;
}

【讨论】:

  • 虽然很容易看到秘密图像。
  • 是的,我知道。但我不确定图像应该是如何保密。如果只是为了好玩而隐藏部分图像,那么这将起作用。但是,如果目标是让用户想要捐赠以能够看到整个图像,那么这将是一个坏主意。
  • +1 抵消负面影响。这实际上是一个很好的答案,只要了解它非常不安全的事实。
  • @samgoody,您可能也应该 +1 brianegge 的回答 :-) 但说真的,如果目的是通过在您拥有内容之前不透露内容来赚取一定数量的钱,那么可悲的不安全并不是真的是要走的路。
【解决方案3】:

最快的方法是使用Google Charts 或 PayPal 的图片,看看您是否可以根据自己的网站进行调整。否则,您将需要动态生成图像或静态生成它们。由于图像不是很多,因此您也可以静态生成它们。

您可以使用多种工具来做到这一点,但ImageMagick 可能是最通用的。如果您想使用自己的图像,可以使用 ImageMagick 进行操作。

# take your source image, and make it a known size.
#In this case, I'll make my image a 256 px square
convert flower.jpg -resize 256x256^ -gravity center -extent 256x256 flower_256.jpg
# run this command in a bash shell to generate the images
for i in $(seq -w 0 256); 
do 
   convert flower_256.jpg -gravity west -background blue -crop ${i}x256+0+0 -extent 256x256 flower_seq_$i.jpg
done

您现在将拥有 256 张图像,如下所示:


(来源:theeggeadventure.com

(来源:theeggeadventure.com
@ 987654327@
(来源:theeggeadventure.com

(来源:theeggeadventure.com

显然,您可以调整几何形状或颜色以适合。

【讨论】:

  • 他没有在 URL 中添加任何级别,实际上他为 Pax 的解决方案提供了一个很好的补充:brianegge 的解决方案将生成 Pax 解决方案所需的 251 张图像。 +1。
猜你喜欢
  • 1970-01-01
  • 2023-04-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-08
  • 1970-01-01
  • 2015-05-03
  • 2022-11-16
相关资源
最近更新 更多