废话不多说了,直接给大家贴php等比压缩图片大小的相关代码了,具体代码如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
<?php
$im = imagecreatefromjpeg( 'D:phpplace.jpeg' );
resizeImage( $im ,,, 'xinde' , '.jpg' );
function resizeImage( $im , $maxwidth , $maxheight , $name , $filetype )
{
$pic_width = imagesx( $im );
$pic_height = imagesy( $im );
echo "start-----------------" ;
if (( $maxwidth && $pic_width > $maxwidth ) && ( $maxheight && $pic_height > $maxheight ))
{
if ( $maxwidth && $pic_width > $maxwidth )
{
$widthratio = $maxwidth / $pic_width ;
$resizewidth_tag = true;
}
if ( $maxheight && $pic_height > $maxheight )
{
$heightratio = $maxheight / $pic_height ;
$resizeheight_tag = true;
}
if ( $resizewidth_tag && $resizeheight_tag )
{
if ( $widthratio < $heightratio )
$ratio = $widthratio ;
else
$ratio = $heightratio ;
}
if ( $resizewidth_tag && ! $resizeheight_tag )
$ratio = $widthratio ;
if ( $resizeheight_tag && ! $resizewidth_tag )
$ratio = $heightratio ;
$newwidth = $pic_width * $ratio ;
$newheight = $pic_height * $ratio ;
if (function_exists( "imagecopyresampled" ))
{
$newim = imagecreatetruecolor( $newwidth , $newheight );
imagecopyresampled( $newim , $im ,,,,, $newwidth , $newheight , $pic_width , $pic_height );
}
else
{
$newim = imagecreate( $newwidth , $newheight );
imagecopyresized( $newim , $im ,,,,, $newwidth , $newheight , $pic_width , $pic_height );
}
$name = $name . $filetype ;
imagejpeg( $newim , $name );
imagedestroy( $newim );
}
else
{
$name = $name . $filetype ;
imagejpeg( $im , $name );
}
}
|
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!