我正在尝试实现YUI图像裁剪。我对Javascript几乎一无所知--所以显然我很难理解它是如何工作的。谁能指出我在正确的方向,能够抓住图像的裁剪区域的坐标,以便我可以通过这些PHP脚本做裁剪之前,将图像保存到文件。到目前为止,我得到了我想要裁剪的图像以及裁剪区域,我可以拖动和使用手柄来使其变大和变小:
<script>
// Create a YUI sandbox on your page.
YUI().use('node', 'event', function (Y) {
// The Node and Event modules are loaded and ready to use.
var imgCrop = new YAHOO.widget.ImageCropper('crop1',
{
minHeight: 100,
minWidth: 200,
initHeight: 100,
initWidth: 200
});
var cropArea = imgCrop.getCropCoords();
});
</script>
<?php
<img src='$approve' id='crop1' />
?>
任何技巧和指针都将非常感谢,因为使用YUI被证明是困难的。谢谢
发布于 2012-09-17 22:01:05
首先,您可以使用PHP裁剪图像,那么为什么还要费心去处理一种您不熟悉的语言呢?
其次,你裁剪图像的目的是什么?缩略图?
这里有一个你可能从中受益的例子。这将创建原始图像的100x100 (调整大小和裁剪)缩略图。
if(preg_match('/[.](jpg)$/', $tfile)) {
$image = imagecreatefromjpeg($ufile);
} else if (preg_match('/[.](gif)$/', $tfile)) {
$image = imagecreatefromgif($ufile);
} else if (preg_match('/[.](png)$/', $tfile)) {
$image = imagecreatefrompng($ufile);
}
$oldx = imagesx($image);
$oldy = imagesy($image);
if ($oldx > $oldy) {
$offx = ($oldx-$oldy)/2;
$offy = 0;
$oldx = $oldy;
} elseif ($oldy > $oldx) {
$offx = 0;
$offy = ($oldy-$oldx)/2;
$oldy = $oldx;
} else {
$offx = 0;
$offy = 0;
}
$newim = imagecreatetruecolor(100, 100);
imagecopyresampled($newim, $image, 0, 0, $offx, $offy, 100, 100, $oldx, $oldy);
https://stackoverflow.com/questions/12467480
复制