3000分求PHP图片上传/放大缩小/裁减的源代码

sdyqingdao 2009-08-27 10:37:35
3000分求PHP图片上传/放大缩小/裁减的源代码。能裁减固定大小比如(120*100)的就行。有预览,能显示图片长宽和大小(file size)最好。

如果有JSP源代码更好。

本人结帖率是99.87%, 可用分8400+

急用, 非常非常感谢!!
...全文
318 11 打赏 收藏 举报
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zhmg86 2011-11-02
在找···挖坟
  • 打赏
  • 举报
回复
总哈哈 2009-08-27
好象以前.NET区发过一个,楼主找找!这种代码其实挺多的.
  • 打赏
  • 举报
回复
guosheng1987 2009-08-27
discuz 里面有类似的功能,可以看一下。
  • 打赏
  • 举报
回复
zhanglzlkn 2009-08-27
以前没有试过这个功能,学习一下,csdn 的图片上传就是裁减的,可以借鉴
  • 打赏
  • 举报
回复
craboy1 2009-08-27
把phpcms的拿过来吧,它是我见过最好的图片处理器,裁减大小,比例随便。透明显示、鼠标拖拽。预览功能。
至于放功能为没见过这样需求。因为肯定会失真。
  • 打赏
  • 举报
回复
ygao168 2009-08-27
得分都是0,分跑哪去了
  • 打赏
  • 举报
回复
CYBEREXP2008 2009-08-27
<html>
<title>图片上传样例</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
</head>
<body>
<div style="width: 500px; text-align: left;">
<?php
//如果收到提交请求
if ($_POST['submitted'] == "yes"){
$goodtogo = true;
//检查图片是否是0长度.
try {
if ($_FILES['image']['size'] == 0){
$goodtogo = false;
throw new exception ("对不起,不能上传其它格式图片.");
}
} catch (exception $e) {
echo $e->getmessage();
}
//检查文件大小.
try {
if ($_FILES['image']['size'] > 500000){
$goodtogo = false;
//显示错误信息.
throw new exception ("对不起,图片文件不能超过: " . intval ($_FILES['image']['size'] / 1000) . "KB");
}
} catch (exception $e) {
echo $e->getmessage();
}
//允许上传的mime类型,本例中只允许jpg格式,您可自行添加
$allowedmimes = array ("image/jpeg","image/pjpeg");
try {
if (!in_array ($_FILES['image']['type'],$allowedmimes)){
$goodtogo = false;
throw new exception ("错误,文件类型必须为 .jpg文件. 我们上传的文件类型为: " . $_FILES['image']['type'] . "");
}
} catch (exception $e) {
echo $e->getmessage ();
}
//如果通过提交,则移动到目录中,显示之.
if ($goodtogo){
try {
if (!move_uploaded_file ($_FILES['image']['tmp_name'],"uploads/".$_FILES['image']['name'].".jpg")){
$goodtogo = false;
throw new exception ("上传文件的uploads目录有错误,请检查属性.");
}
} catch (exception $e) {
echo $e->getmessage ();
}
}
if ($goodtogo){
//显示新上传的图片
?><img src="uploads/<?php echo $_FILES['image']['name'] . ".jpg"; ?>" alt="" title="" /><?php
}
?><br /><a href="Javascript:history.back(-1)">再次上传</a><?php
}
//显示表单.
if ($_POST['submitted'] != "yes"){
?>
<form action="" method="post" enctype="multipart/form-data">
<input type="hidden" name="submitted" value="yes" />
图片上传 (只能上传.jpg文件, 文件大小不能超过500KB):<br /> <input type="file" name="image" /><br />
<input type="submit" value="提交" style="margin-top: 10px;" />
</form>
<?php
}
?>
</div>
</body>
</html>


记得安装你的GD库和ImageMagick


  • 打赏
  • 举报
回复
Abin-2008 2009-08-27
你可以考虑 结合flash来实现啊?
  • 打赏
  • 举报
回复
CYBEREXP2008 2009-08-27

<?php
$resource = NewMagickWand();
MagickReadImage( $resource, 'flower.jpg' );
MagickSetFormat($resource, 'JPG');
MagickSetImageCompression($resource, MW_JPEGCompression);
//压缩后的损失率,80%为较高,数越小,则失真越大
MagickSetImageCompressionQuality($resource, 80.0);
header( 'Content-Type: image/gif' );
MagickEchoImageBlob( $resource );
?>

图片压缩!!
  • 打赏
  • 举报
回复
CYBEREXP2008 2009-08-27
<?php 
$resource = NewMagickWand();
MagickReadImage( $resource, 'flower.jpg' );
//将原图片宽度重新缩放为100x100
MagickResizeImage( $resource, 100, 100, MW_QuadraticFilter, 1.0 );
header( 'Content-Type: image/gif' );
MagickEchoImageBlob( $resource );
?>

图片放大:
  • 打赏
  • 举报
回复
CYBEREXP2008 2009-08-27
图片剪切:
<?php
$resource = NewMagickWand();
MagickReadImage( $resource, 'flower.jpg' );
MagickCropImage( $resource, 200, 50, 0, 0 );
header( 'Content-Type: image/jpeg' );
MagickEchoImageBlob( $resource );
?>


  • 打赏
  • 举报
回复
发帖
基础编程

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
帖子事件
创建了帖子
2009-08-27 10:37
社区公告
暂无公告