我有一个带有文本内容的网页(在.Net平台上,带有C#),我想阻止用户复制文本或打印文档。
如果用户很难获得该页面的副本,我知道他可以。但我想尽可能地努力
我已经找到了几点。
我可能还有更多解决方案,我不知道 在这种情况下,你能告诉我最好的解决方案吗?
答案 0 :(得分:2)
没有解决方案。任何网页都必须在内存中表示为DOM,并且不缺少让人们操纵并从中提取文本的工具。
DRM充其量是无效的,当涉及HTML时,“最好的”还有很长的路要走。
答案 1 :(得分:2)
您可以使用初始解决方案并使用CSS规则将所有内容隐藏在打印版本中:
<style type="text/css" media="print">* { display: none;}</style>
当然,正如昆汀所说,没有明确的方法这样做,但阻止了选择,使用通过javascript在页面中写入的文本的编码版本并使用此CSS片段,您可以得到大约80%的用户。
document.getElementById('elementId').innerHTML = unescape(escapedTextGoesHere);