我正在尝试实现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证明是困难的。感谢
答案 0 :(得分:0)
首先,您可以使用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);