Lily200825
图片加水印(图片加水印(java版)
一、功能说明功能说明
1将水印图片叠加到原图上2可设置水印图片透明度默认为1不透明可设置水印图片透明度默认为不透明3可设置水印图片相对于原图的左边距和上边距默认为0可设置水印图片相对于原图的左边距和上边距默认为4可设置水印图片的宽高默认为原始尺寸可设置水印图片的宽高默认为原始尺寸5注意事项
图片输出到本地为防止内存溢出,请增大jvm内存推荐Xmx1024m可处理20M左右10000×10000超高清图片
fLily200825
二、代码
1原代码
importjavaawtAlphaCompositeimportjavaawtGraphics2DimportjavaawtImageimportjavaawtimageBufferedImageimportjavaioFileimportjavaioFileOutputStreamimportjavaioIOExceptio
importjavaioI
putStream
importjavaximageiostreamImageI
putStream
importcomsu
imagecodecjpegJPEGCodecimportcomsu
imagecodecjpegJPEGImageE
coder
图片加水印li图片输出到本地图片输出到本地li图片输出到本地li为防止内存溢出,请增大jvm内存推荐fo
tcolorredXmx1024mfo
tli为防止内存溢出,内存推荐为防止内存溢出li可处理20M左右大图片左右大图片li可处理authorlily200825date201161publicclassImageWatermarkUtil输出打印日志publicstaticboolea
IS_DEBUGtrue
图片加水印paramsrcImg原图片路径水印图片路径输出图片路径
paramwatermarkImg
paramdestImg
fLily200825
paramalphaparamleftparamtop水印图相对原图上边距默认值为水印图相对原图上边距默认值为fo
tcolorred0fo
t水印图输出宽默认值为水印图宽fo
t水印图输出宽默认值为fo
tcolorred水印图宽水印图宽水印图输出高默认值为水印图高fo
t水印图输出高默认值为fo
tcolorred水印图高水印图高水印图相对原图左边距默认值为水印图相对原图左边距默认值为fo
tcolorred0fo
t水印图透明度
paramwidth
paramheightretur
throwsIOExceptio
publicstaticboolea
watermarkImageStri
gsrcImgStri
gwatermarkImgStri
gdestImgFloatalphaI
tegerleftI
tegertopI
tegerwidthI
tegerheightthrowsIOExceptio
ifdestImg
ulldestImgtrimle
gth0ifIS_DEBUGSystemerrpri
tl