Java新增水印

2021-09-12 15:17:16 字數 1000 閱讀 2970

/**

* @description

* @param sourceimgpath 源路徑

* @param tarimgpath 儲存的路徑

* @param watermarkcontent 水印內容

* @param fileext 格式

* @return void

*/public static void addwatermark(string sourceimgpath, string tarimgpath, string watermarkcontent,string fileext)

jlabel label = new jlabel(watermarkcontent);

fontmetrics metrics = label.getfontmetrics(font);

int width = metrics.stringwidth(label.gettext());

int rowsnumber = srcimgheight/width+srcimgheight%width; // 列印的行數=的高/文字水印的寬

int columnsnumber = srcimgwidth/width+srcimgwidth%width; // 每行列印的列數=的寬/文字水印的寬

// 至少列印一次,防止太小而文字水印太長

if(rowsnumber < 1)

if(columnsnumber < 1)

for(int j=0;j}

g.dispose();// 釋放資源

// 輸出

outimgstream = new fileoutputstream(tarimgpath);

imageio.write(bufimg, fileext, outimgstream);

} catch (exception e) finally

} catch (exception e)

}}

iOS 新增水印

新增水印,這個需求要求調研時,因為是新的技術點,查閱了一些資料。資料中統統都說 獲取介面的rgb值,將需要加密的資訊翻譯成二進位制,通過位運算,新增到每個rgb值的二進位制末尾實現。解碼時線取介面的rgb二進位制值,通過位運算,得出加密資訊的二進位制即可。網上給了一些獲得介面rgb的方法,我按照其方...

js新增水印

watermark 傳入動態水印內容 function watermark settings 採用配置項替換預設值,作用類似jquery.extend if arguments.length 1 typeof arguments 0 object for key in src var otemp d...

PHP 新增水印

require config.inc.php if isset post send cur time date y m d h i s tmp name img tmp name 求出上傳的名稱字尾 ext name strtolower substr name,strrpos name,strle...