2017-05-24 57 views
-4

我們有一個網站,共享一些圖像,不能在某個日期之前發佈。用戶使用用戶名和密碼登錄。我想知道是否可以使用登錄的用戶名來阻止每個圖像的水印共享這些圖像?據我所知,網站是用java/CSS編寫的。帶用戶名的水印圖像CSS

希望這足以得到某種領先!

編輯:

看來我有信息缺乏大量...這裏是更多

服務器端編程語言 微軟的Active Server Pages在.NET框架技術。 ASP.NET

客戶端編程語言 JavaScript是一種輕量級的,面向對象的,跨平臺的腳本語言,主要用於網頁內。 的JavaScript

JavaScript庫 jQuery是一個JavaScript庫,它簡化了HTML文檔遍歷,事件處理,動畫和Ajax交互。最初由John Resig開發。 jQuery 1.12.4 (8%的網站使用較新的版本)

Bootstrap是一個開源的HTML,CSS和JavaScript框架。 引導程序

標記語言 HTML5是HTML標準的第五個修訂版本。

+0

水印可以在服務器端,而用戶上傳圖像。 (如果你有php,那麼它有一些庫)。 javascript或css不會對它做任何事情,只能放在它的頂部。 –

+0

歡迎來到SO社區。目前沒有足夠的信息來說明您正在使用的架構或平臺,以便任何人提供合理的答案。 'java/CSS'對於有經驗的開發人員來說毫無意義。服務器端,你應該確定你是否使用Java,PHP,ASP.NET,ColdFusion或其他架構。 –

+0

他在說他正在使用Java,一種服務器端技術。這足以讓信息能夠解決這個問題。 – broodjetom

回答

0

你不能用CSS進行水印。這必須在服務器端完成,因爲這是您能夠處理和修改文件的地方。由於您使用的是Java,因此可能有一個庫可以幫助您解決這個問題。

上傳圖片時是否需要添加水印。添加水印,然後保存在某個地方。

How can I watermark an image in Java?

0

基本上,你說的都是我有一個網站和問題。當然你的前臺是用JS編碼的,而不是你有更多的選擇,並且你使用CSS來進行樣式設計,並且你使用HTML來進行結構化,甚至可以使用網頁的語義,對吧?

大家都可以斷定這些設置:)

問題是你可能想這樣做的後端(服務器端)。你還沒有說明你在應用程序的那一部分中使用了什麼。

如果你堅持在前端做這(使用JS),你可以使用HTML5,並呼籲帆布的新元素之一

這是一個基本的小提琴我做了,這是非常簡單的:fiddle me diddle

 var canvas = document.getElementById('viewport'), 
    context = canvas.getContext('2d'); 

function drawIt() { 
    base_image = new Image(); 
    base_image.src = 'https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTPBj_avFTxiKBETiND86_i-xQTDOMVYEXB0kaeh3uPOTfvfA3n'; 
    context.font = "30px Georgia"; 
    context.canvas.width = 500; 
    context.canvas.height = 500; 
    context.drawImage(base_image, 0, 0); 
    context.fillText("FEAR the DERP powaa", 50, 180); 
} 

drawIt(); 

!注意 ! 任何受過教育的用戶將能夠得到原始圖片(只是沒有右鍵點擊 - 保存圖片爲..)

爲什麼?

圖像必須以原始形式從某處訪問,然後放入畫布。由於這種「加入」發生在用戶的瀏覽器中,他的瀏覽器必須獲得原始圖像(沒有文本),並且智能用戶會知道鋤頭才能找到它。

這是在將圖像發送到用戶瀏覽器之前,應在服務器上執行此操作的主要原因。然後,所有瀏覽器看到的都是被更改的圖像(帶有文本)。

+0

謝謝你。我會研究這一點,並記住發送到瀏覽器之前應該完成的部分! –