watermark.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /**
  2. * 水印添加方法
  3. */
  4. /**
  5. * 水印添加方法
  6. */
  7. let setWatermark = (str1, str2) => {
  8. let waterMarkId = "waterMark_123";
  9. // let waterMarkId = "1.23452384164.123412415";
  10. if (document.getElementById(waterMarkId) !== null) {
  11. document.body.removeChild(document.getElementById(waterMarkId));
  12. }
  13. let can = document.createElement("canvas");
  14. // 设置canvas画布大小
  15. can.width = 390;
  16. can.height = 180;
  17. let cans = can.getContext("2d");
  18. // 水印旋转角度
  19. cans.rotate((-20 * Math.PI) / 180);
  20. cans.font = "20px Vedana";
  21. // cans.fillStyle = "#666666";
  22. cans.fillStyle = "#F0FFFF";
  23. cans.textAlign = "center";
  24. cans.textBaseline = "Middle";
  25. cans.fillText(str1, can.width / 2, can.height); // 水印在画布的位置x,y轴
  26. cans.fillText(str2, can.width / 2, can.height + 22);
  27. let div = document.createElement("div");
  28. div.id = waterMarkId;
  29. div.style.pointerEvents = "none";
  30. div.style.top = "60px";
  31. div.style.left = "0px";
  32. div.style.opacity = "0.32";
  33. div.style.position = "fixed";
  34. div.style.zIndex = "100000";
  35. div.style.width = document.documentElement.clientWidth + "px";
  36. div.style.height = document.documentElement.clientHeight + "px";
  37. // div.style.background = "rgba(255, 255, 255, 0.2)";
  38. div.style.background =
  39. "url(" + can.toDataURL("image/png") + ") left top repeat";
  40. document.body.appendChild(div);
  41. return waterMarkId;
  42. };
  43. // 添加水印方法
  44. export const setWaterMark = (str1, str2) => {
  45. let waterMarkId = setWatermark(str1, str2);
  46. if (document.getElementById(waterMarkId) === null) {
  47. waterMarkId = setWatermark(str1, str2);
  48. }
  49. };
  50. // 移除水印方法
  51. export const removeWatermark = () => {
  52. let waterMarkId = "1.23452384164.123412415";
  53. if (document.getElementById(waterMarkId) !== null) {
  54. document.body.removeChild(document.getElementById(waterMarkId));
  55. }
  56. };