使用jQuery裁剪图片

时间:2012-06-15 17:53:44

标签: javascript jquery image crop

可以请某人向我解释或带我去使用JavaScript / jQuery裁剪图片的方式吗? 我不是在寻找插件,我想了解它是如何完成的并使用它。 我也不希望div操纵背景位置。 我想裁剪实际图片。但仅限于客户方面。我不需要在后端挂钩来保存裁剪的图片。

1 个答案:

答案 0 :(得分:4)

jQuery没有图片裁剪功能。

例如,您可以使用HTML5 canvas元素来实现这一点。这是一个tutorial

<!DOCTYPE HTML>
<html>
  <head>
    <style>
      body {
        margin: 0px;
        padding: 0px;
      }
      #myCanvas {
        border: 1px solid #9C9898;
      }
    </style>
    <script>
      window.onload = function() {
        var canvas = document.getElementById("myCanvas");
        var context = canvas.getContext("2d");
        var imageObj = new Image();

        imageObj.onload = function() {
          // draw cropped image
          var sourceX = 150;
          var sourceY = 0;
          var sourceWidth = 150;
          var sourceHeight = 150;
          var destWidth = sourceWidth;
          var destHeight = sourceHeight;
          var destX = canvas.width / 2 - destWidth / 2;
          var destY = canvas.height / 2 - destHeight / 2;

          context.drawImage(imageObj, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight);
        };
        imageObj.src = "http://www.html5canvastutorials.com/demos/assets/darth-vader.jpg";
      };

    </script>
  </head>
  <body>
    <canvas id="myCanvas" width="578" height="400"></canvas>
  </body>
</html>