Advertisement
Guest User

Untitled

a guest
Apr 25th, 2014
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.07 KB | None | 0 0
  1. var photoObj = new Image();
  2.  
  3. photoObj.onload = function() {
  4. var photoImage = new Kinetic.Image({
  5. x: 0,
  6. y: 0,
  7. image: photoObj,
  8. width: photoObj.width,
  9. height: photoObj.height,
  10. name: "photo",
  11. id: "photo"
  12. });
  13. photoGroup.removeChildren();
  14. photoGroup.add(photoImage);
  15.  
  16. photoGroup = new Kinetic.Group({
  17. x : 0,
  18. y : 0,
  19. draggable : true,
  20. id : "photoGroup"
  21. });
  22.  
  23. photoLayer = new Kinetic.Layer({
  24. drawBorder: true
  25. });
  26.  
  27. photoLayer.add(photoGroup);
  28.  
  29. stage = new Kinetic.Stage({
  30. container : "kinetic-kard-preview",
  31. width : 320,
  32. height : 480
  33. });
  34.  
  35. stage.add(photoLayer);
  36. stage.draw();
  37.  
  38. var containerOffset=$("#kinetic-kard-preview").offset();
  39. var offsetX=containerOffset.left;
  40. var offsetY=containerOffset.top;
  41. console.log(offsetX);//455.859375
  42. console.log(offsetY);//218
  43.  
  44. <canvas width="320" height="480" style="padding: 0px; margin: 0px; border: 0px; background-color: transparent; width: 320px; height: 480px; position: absolute; background-position: initial initial; background-repeat: initial initial;"></canvas>
  45.  
  46. <!DOCTYPE html>
  47. <html>
  48. <head>
  49. <meta charset="utf-8">
  50. <title>Prototype</title>
  51. <script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
  52. <script src="http://d3lp1msu2r81bx.cloudfront.net/kjs/js/lib/kinetic-v4.5.1.min.js"></script>
  53. <style>
  54. body{padding:20px; background:ivory;}
  55. #kinetic-kard-preview{
  56. margin-top: 10px;
  57. width:350px;
  58. height:350px;
  59. border:1px solid gray;
  60. }
  61. #target{position:absolute;top:200px;left:150px;opacity:0.50;}
  62. </style>
  63. <script>
  64. $(function(){
  65.  
  66. //
  67. $pos=$("#results");
  68.  
  69. //
  70. var containerOffset=$("#kinetic-kard-preview").offset();
  71. var offsetX=containerOffset.left;
  72. var offsetY=containerOffset.top;
  73.  
  74. //
  75. var stage = new Kinetic.Stage({
  76. container: 'kinetic-kard-preview',
  77. width: 350,
  78. height: 350
  79. });
  80.  
  81. //
  82. photoLayer = new Kinetic.Layer({
  83. drawBorder: true
  84. });
  85. stage.add(photoLayer);
  86.  
  87. //
  88. photoGroup = new Kinetic.Group({
  89. x : 0,
  90. y : 0,
  91. draggable : true,
  92. id : "photoGroup"
  93. });
  94. photoGroup.on("dragmove",function(){
  95. var gPos=photoGroup.getPosition();
  96. var x=parseInt(offsetX+gPos.x);
  97. var y=parseInt(offsetY+gPos.y);
  98. $pos.text("photoImage: screenX="+x+", screenY="+y);
  99. });
  100. photoLayer.add(photoGroup);
  101.  
  102. //
  103. var photoObj = new Image();
  104. photoObj.onload = function() {
  105. var photoImage = new Kinetic.Image({
  106. x: 0,
  107. y: 0,
  108. image: photoObj,
  109. width: photoObj.width,
  110. height: photoObj.height,
  111. name: "photo",
  112. id: "photo"
  113. });
  114. photoGroup.add(photoImage);
  115. photoLayer.draw();
  116. }
  117. photoObj.src="https://dl.dropboxusercontent.com/u/139992952/multple/norwayFlag.jpg";
  118.  
  119.  
  120. }); // end $(function(){});
  121. </script>
  122. </head>
  123. <body>
  124. <h4>Semi-transparent flag is at screen position 150,200</h4>
  125. <p id=results>Drag the opaque flag and see screen position</p>
  126. <img id=target src='https://dl.dropboxusercontent.com/u/139992952/multple/norwayFlag.jpg'>
  127. <div id="kinetic-kard-preview"></div>
  128. </body>
  129. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement