4

有哪些有效的策略可以防止使用我的专有图像?

我说的是保存它们,直接链接到它们等等......

目前我在图像上有水印,但我宁愿没有。

.NET 平台是首选,但如果有一个策略在另一个平台上与我现有的应用程序集成,那将是一个奖励。

4

15 回答 15

30

不可能让它“不可能”下载。当用户访问您的网站时,您正在向他们发送图片。用户将在浏览器缓存中拥有该图像的副本,并且即使在他离开站点后也可以访问它(当然,取决于浏览器)。您唯一真正的选择是给它们加水印:O

于 2008-08-21T23:38:43.463 回答
13

您可以将每个图像嵌入到 Flash 应用程序中,然后浏览器将不知道如何“保存”图像,也不会将原始 jpg 存储在缓存文件夹中。他们仍然可以只按打印屏幕键来获取图像的副本,但这可能足以阻止大多数访问者。

于 2008-08-21T23:46:03.087 回答
13

Response.WriteBinary()、嵌入式闪存、JavaScript hack、隐藏的 div。

多年来,我已经看到并尝试了所有可能的方法来保护图像,我得出了一个结论:如果它可以在网上看到;可以拿走的,我的朋友。

所以,你真正应该考虑的是这个动作的最终目标是什么。防止盗版?如果粗大且过大的水印不是您的风格,您可以随时在图像中嵌入隐藏数据(Apress 有一篇文章在数字隐写术方面看起来很有希望),以便以后将它们识别为您自己的。您可能只提供质量降低或质量较低的图像。

Flickr 采用在图像顶部放置一个透明 gif 图层的方法,因此如果您未登录并右键单击,您将获得他们非常棒的spaceball.gif。但是,除了不提供图片之外,没有什么可以阻止屏幕截图。

如果音乐行业可以让您在不复制或拥有文件的情况下收听所有音乐,他们会的。如果电视可以播放并确定没有人可以存储演员表的副本,他们可能也会这样做。这是与公众共享媒体的不幸部分。这里真正的好问题是如何在不妨碍受尊敬的用户使用您的图像的情况下保护您的材料。设置太多的保护,没有人会去你的网站/使用你的软件(就个人而言,如果你试图禁用我的鼠标,我几乎会立即从好用户变成坏用户)。

于 2008-08-22T00:02:02.563 回答
4

使用 JavaScript 覆盖点击事件是我见过的最常见的......

见:http ://pubs.logicalexpressions.com/pub0009/LPMArticle.asp?ID=41

于 2008-08-21T23:39:07.220 回答
4

我想我不妨投入两分钱。

除水印外,上述方法均无效。

无论我走到哪里,我都可以在电脑上点击打印屏幕并粘贴到图形编辑器中,稍微裁剪一下,我就有了你的图像。

克服水印问题的唯一方法是使用 Photoshop 工具去除水印。在这一点上,我认为大多数人会放弃并为您的内容付费,或者至少会敲诈别人。

于 2011-02-16T22:52:06.293 回答
3

简短的回答:你不能。无论您向用户展示什么,他们都可以使用。您可以对其进行水印、模糊处理或提供低分辨率版本,但最重要的是,用户浏览器中显示的任何图像都将以某种方式提供给他们。

于 2008-08-21T23:58:37.377 回答
3

这是不可能的。总是有PrintScreen 按钮。

无论显示什么,都可以被捕获。

于 2008-08-22T00:15:22.937 回答
2

我会给它们加水印,并降低实际文件的分辨率,而不是通过用户端的应用程序来完成。

于 2008-08-21T23:58:23.663 回答
2

不幸的是,您总是可以通过屏幕抓取浏览器并裁剪图像,虽然并不完美,但它几乎绕过了此处发布的所有解决方案:(

于 2008-08-22T00:29:00.050 回答
2

我见过的另一种仍然完全容易受到屏幕抓取但确实使右键单击和缓存搜索非常烦人的方法是将图像分解为许多小图像并将它们平铺在一起显示在您的页面上,就好像它们是一个单一的一样图片。

但正如大家所说,如果他们能看到它,他们就能抓住它。

于 2009-04-03T14:17:04.883 回答
1

实际上你不能,除非你不希望他们一开始就看到它。您可以使用一些 javascript 来捕捉鼠标右键单击,但仅此而已。

另一个想法,你可以将它嵌入到 Flash 中,但同样,他们可以截屏。

于 2008-08-21T23:39:20.280 回答
1

对不起。这不可能。你所能做的就是让它变得不方便,就像 flickr 一样。

于 2008-08-21T23:53:40.337 回答
1

这是不可能的。总是有 PrintScreen 按钮。

我记得几年前测试过 ImageFreeze。它使用 Java 小程序来获取和显示图像。图像数据和连接是加密的,未加密的图像没有存储在临时文件夹甚至 Java 的缓存中。

此外,小程序不断清除 Windows 的 Clipbrd,因此 Print Screen 无法正常工作。

它工作得很好,但它有一些错误。

除了需要 Java 之外,嵌入小程序(可能还有小程序本身)的 JS 被设置为无法在任何不能访问 windows clipbrd 的浏览器中正确加载。这意味着它只能在 IE 中工作,并且只能在 Windows 上工作。

此外,可以使用非常快的 Print Screen 和 ctrl+v 进入 Gimp 来打破小程序用于清除 clipbrd 的时间间隔。以其他方式打印屏幕也可以。

最后,Jad可以反编译小程序及其所有/大部分文件。所以,如果你真的想要这些照片,你可以在源代码中四处寻找,看看他们是如何做到的。

简而言之,您可以竭尽全力阻止很多人,但可用性会付诸东流,如果访问者可以看到图像,总会有办法获得图像。

于 2008-08-22T01:08:03.403 回答
0

您发送给客户端的任何内容都在客户端上。除了在“有点难”和“相当难”之间做一些事情来保存图像之外,你无能为力。

于 2008-08-21T23:50:00.050 回答
0

我必须在开始时说,要阻止图像或文本被复制几乎是不可能的,但让它变得困难将阻止大多数用户窃取内容。在这篇文章中,我将给出一个更简单但有效的方法来保护图像html/css。为此,我们将采用一种非常简单的方法……首先,我们将在一个 div 中放置具有给定高度和宽度的图像。(比如说 200 X 200)

现在我们可以放置另一个具有相同高度和宽度的透明图像,并给它一个 -200 的边距。这样它将与实际图像重叠。当用户试图复制这个时,他们最终只会得到透明的 gif……</p>

    <div style=”float: left;”&gt;
<img src=”your-image.jpg” style=”width: 200px;height: 200px;”/>
<img src=”the-dummy-image.png” style=”border: 0px solid #000; width: 200px; height: 250px; margin-left: -200px; ” />
</div>
于 2012-07-08T11:24:40.117 回答