Skip to content

watermark ๆฐดๅฐ โ€‹

  1. CSS ่ƒŒๆ™ฏๅ›พ
  2. SVG ่ƒŒๆ™ฏๅ›พ
  3. Canvas

Css background โ€‹

html
<div class="watermark-container">
  <h1>Welcome to My Website</h1>
  <p>This content is protected by a watermark.</p>
</div>

<style>
  .watermark-container {
    position: relative;
    padding: 40px;
    /* ่ฎพ็ฝฎ่ƒŒๆ™ฏๆฐดๅฐ็š„ๆ ทๅผ */
    overflow: hidden;
  }

  /* ไฝฟ็”จไผชๅ…ƒ็ด ๆฅๅฎž็Žฐ้‡ๅคๆ—‹่ฝฌๆฐดๅฐ */
  .watermark-container::after {
    content: ""; /* ไผชๅ…ƒ็ด ๆ— ๅ†…ๅฎน */
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200"><text x="10" y="50" fill="rgba(0,0,0,0.1)" font-size="20">Your Watermark</text></svg>');
    background-repeat: repeat; /* ่ƒŒๆ™ฏๅ›พๅƒ้‡ๅค */
    background-size: 150px 150px; /* ่ฎพ็ฝฎๆฐดๅฐ็š„ๅคงๅฐ */
    transform: rotate(-25deg); /* ๆ—‹่ฝฌๆฐดๅฐ */
    pointer-events: none; /* ้˜ฒๆญขๅฝฑๅ“ไบคไบ’ */
    opacity: 0.5; /* ่ฎพ็ฝฎๆฐดๅฐ้€ๆ˜Žๅบฆ */
    z-index: 1; /* ็กฎไฟๆฐดๅฐๅœจๅ…ถไป–ๅ†…ๅฎนไธŠ */
  }
</style>

svg โ€‹

html
<svg width="200" height="200" viewBox="0 0 200 200">
  <text
    x="50%"
    y="50%"
    font-size="50"
    text-anchor="middle"
    fill="rgba(0, 0, 0, 0.1)"
  >
    Watermark
  </text>
</svg>

canvas โ€‹

html
<canvas id="watermarkCanvas" width="800" height="600"></canvas>
<script>
  var canvas = document.getElementById("watermarkCanvas");
  var ctx = canvas.getContext("2d");

  // ่ฎพ็ฝฎๆฐดๅฐๅญ—ไฝ“ๅ’Œๆ ทๅผ
  ctx.font = "48px sans-serif";
  ctx.fillStyle = "rgba(0, 0, 0, 0.1)";
  ctx.textAlign = "center";
  ctx.textBaseline = "middle";

  // ็ป˜ๅˆถๆฐดๅฐๆ–‡ๆœฌ
  ctx.save();
  ctx.rotate((-45 * Math.PI) / 180); // ๆ—‹่ฝฌๆฐดๅฐ
  ctx.fillText("Watermark", canvas.width / 2, canvas.height / 2);
  ctx.restore();
</script>

Released under the MIT License.