JavaScript DHTML/YUI Library/Image Crop
Содержание
Connection Manager assisted image crop
<source lang="html4strict">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Connection Manager assisted image crop</title> <style type="text/css"> /*margin and padding on body element
can introduce errors in determining element position and are not recommended; we turn them off as a foundation for YUI CSS treatments. */
body {
margin:0; padding:0;
} </style> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/resize/assets/skins/sam/resize.css" /> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/fonts/fonts-min.css" /> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/button/assets/skins/sam/button.css" /> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/imagecropper/assets/skins/sam/imagecropper.css" /> <script type="text/javascript" src="yui_2.7.0b-lib/yahoo-dom-event/yahoo-dom-event.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/connection/connection-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/element/element-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/button/button-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/dragdrop/dragdrop-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/resize/resize-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/imagecropper/imagecropper-min.js"></script>
</head> <body class="yui-skin-sam">
Connection Manager assisted image crop
This example shows how to use <a href="http://developer.yahoo.ru/yui/connection/">Connection Manager</a> to issue an image crop request.
<style>
#button1 { margin: 1em; }
</style> <img src="yui_2.7.0b-assets/imagecropper-assets/yui.jpg" id="yui_img" height="333" width="500">
<script> (function() {
var Dom = YAHOO.util.Dom, Event = YAHOO.util.Event, conn = null, results = null; Event.onDOMReady(function() { results = Dom.get("results"); var callback = { success: function(o) { var json = o.responseText.substring(o.responseText.indexOf("{"), o.responseText.lastIndexOf("}") + 1); var data = eval("(" + json + ")");results.innerHTML = "
" + data.data + "
";}, failure: function() {results.innerHTML = "
An error occurred, please try again later.
";} }; var crop = new YAHOO.widget.ImageCropper("yui_img", { initialXY: [20, 20], keyTick: 5, shiftKeyTick: 50 }); var _button = new YAHOO.widget.Button({ id: "cropIt", container: "button1", label: "Crop Image", value: "crop" }); _button.on("click", function() { var coords = crop.getCropCoords(); var url = "yui_2.7.0b-assets/imagecropper-assets/crop.php?top=" + coords.top + "&left=" + coords.left + "&height=" + coords.height + "&width=" + coords.width; conn = YAHOO.util.Connect.asyncRequest("GET", url, callback); }); });
})(); </script>
</body> </html>
</source>
<A href="http://www.wbex.ru/Code/JavaScriptDownload/yui_2.7.0b.zip">yui_2.7.0b.zip( 4,431 k)</a>
how to make an image croppable with some advanced features.
<source lang="html4strict">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Advanced Crop Interface</title> <style type="text/css"> /*margin and padding on body element
can introduce errors in determining element position and are not recommended; we turn them off as a foundation for YUI CSS treatments. */
body {
margin:0; padding:0;
} </style> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/resize/assets/skins/sam/resize.css" /> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/fonts/fonts-min.css" /> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/imagecropper/assets/skins/sam/imagecropper.css" /> <script type="text/javascript" src="yui_2.7.0b-lib/yahoo-dom-event/yahoo-dom-event.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/element/element-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/dragdrop/dragdrop-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/resize/resize-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/imagecropper/imagecropper-min.js"></script>
</head> <body class="yui-skin-sam">
Advanced Crop Interface
This example shows how to make an image croppable with some advanced features.
<img src="yui_2.7.0b-assets/imagecropper-assets/yui.jpg" id="yui_img" height="333" width="500">
<script>
(function() {
var Dom = YAHOO.util.Dom, Event = YAHOO.util.Event; var crop = new YAHOO.widget.ImageCropper("yui_img", { initialXY: [20, 20], initHeight: (Dom.get("yui_img").height / 2), initWidth: (Dom.get("yui_img").width / 2), keyTick: 5, shiftKeyTick: 50 });
})(); </script>
</body> </html>
</source>
<A href="http://www.wbex.ru/Code/JavaScriptDownload/yui_2.7.0b.zip">yui_2.7.0b.zip( 4,431 k)</a>
Real Time Crop Feedback
<source lang="html4strict">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Real Time Crop Feedback</title> <style type="text/css"> /*margin and padding on body element
can introduce errors in determining element position and are not recommended; we turn them off as a foundation for YUI CSS treatments. */
body {
margin:0; padding:0;
} </style> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/resize/assets/skins/sam/resize.css" /> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/fonts/fonts-min.css" /> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/imagecropper/assets/skins/sam/imagecropper.css" /> <script type="text/javascript" src="yui_2.7.0b-lib/yahoo-dom-event/yahoo-dom-event.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/element/element-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/dragdrop/dragdrop-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/resize/resize-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/imagecropper/imagecropper-min.js"></script>
</head> <body class="yui-skin-sam">
Real Time Crop Feedback
This example shows how to use a few of the built in events to real time crop feedback.
<style type="text/css" media="screen">
#results { border: 1px solid black; height: 83px; width: 125px; position: relative; overflow: hidden; } #results img { position: absolute; top: -20px; left: -20px; }
</style>
<img src="yui_2.7.0b-assets/imagecropper-assets/yui.jpg" id="yui_img" height="333" width="500">
- Height: (91)
- Width: (150)
- Top: (20)
- Left: (20)
<script> (function() {
var Dom = YAHOO.util.Dom, Event = YAHOO.util.Event, results = null; Event.onDOMReady(function() { results = Dom.get("results"); var crop = new YAHOO.widget.ImageCropper("yui_img", { initialXY: [20, 20], keyTick: 5, shiftKeyTick: 50 }); crop.on("moveEvent", function() { var region = crop.getCropCoords(); results.firstChild.style.top = "-" + region.top + "px"; results.firstChild.style.left = "-" + region.left + "px"; results.style.height = region.height + "px"; results.style.width = region.width + "px"; Dom.get("t").innerHTML = region.top; Dom.get("l").innerHTML = region.left; Dom.get("h").innerHTML = region.height; Dom.get("w").innerHTML = region.width; }); });
})(); </script>
</body> </html>
</source>
<A href="http://www.wbex.ru/Code/JavaScriptDownload/yui_2.7.0b.zip">yui_2.7.0b.zip( 4,431 k)</a>
Resize an image
<source lang="html4strict">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>8-way Element Resize</title> <style type="text/css"> /*margin and padding on body element
can introduce errors in determining element position and are not recommended; we turn them off as a foundation for YUI CSS treatments. */
body {
margin:0; padding:0;
} </style> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/fonts/fonts-min.css" /> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/resize/assets/skins/sam/resize.css" /> <script type="text/javascript" src="yui_2.7.0b-lib/yahoo-dom-event/yahoo-dom-event.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/animation/animation-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/element/element-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/dragdrop/dragdrop-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/resize/resize-min.js"></script>
</head> <body class="yui-skin-sam">
8-way Element Resize
This example shows how to make an element resizable by all 8 handles.
<style>
#yui_img { position: absolute; top: 20px; left: 20px; } #example-canvas { height: 200px; }
</style> <img src="yui_2.7.0b-assets/resize-assets/yui.jpg" id="yui_img" height="166" width="250"> <script> (function() {
var Dom = YAHOO.util.Dom, Event = YAHOO.util.Event; var resize = new YAHOO.util.Resize("yui_img", { handles: "all", knobHandles: true, height: "166px", width: "250px", proxy: true, draggable: true, animate: true, animateDuration: .75, animateEasing: YAHOO.util.Easing.backBoth });
})(); </script>
</body> </html>
</source>
<A href="http://www.wbex.ru/Code/JavaScriptDownload/yui_2.7.0b.zip">yui_2.7.0b.zip( 4,431 k)</a>
Simple Crop Interface
<source lang="html4strict">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Simple Crop Interface</title> <style type="text/css"> /*margin and padding on body element
can introduce errors in determining element position and are not recommended; we turn them off as a foundation for YUI CSS treatments. */
body {
margin:0; padding:0;
} </style> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/resize/assets/skins/sam/resize.css" /> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/fonts/fonts-min.css" /> <link rel="stylesheet" type="text/css" href="yui_2.7.0b-lib/imagecropper/assets/skins/sam/imagecropper.css" /> <script type="text/javascript" src="yui_2.7.0b-lib/yahoo-dom-event/yahoo-dom-event.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/element/element-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/dragdrop/dragdrop-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/resize/resize-min.js"></script> <script type="text/javascript" src="yui_2.7.0b-lib/imagecropper/imagecropper-min.js"></script>
</head> <body class="yui-skin-sam">
Simple Crop Interface
This example shows how to make an image croppable.
<img src="yui_2.7.0b-assets/imagecropper-assets/yui.jpg" id="yui_img" height="333" width="500">
<script>
(function() {
var Dom = YAHOO.util.Dom, Event = YAHOO.util.Event; var crop = new YAHOO.widget.ImageCropper("yui_img");
})(); </script>
</body> </html>
</source>
<A href="http://www.wbex.ru/Code/JavaScriptDownload/yui_2.7.0b.zip">yui_2.7.0b.zip( 4,431 k)</a>