㈠ thinkphp如何做圖片壓縮呢
在上傳圖片的時候先看看圖片有多大,一般來說導航幻燈片的圖片單張大小盡量不超100k,產品圖不超過20k,這樣載入還慢的話就用ajax後載入方法,可以是滾動載入之類,但是對蜘蛛抓取頁面並不是很友好。
至於你說的用tp把圖片壓縮,那隻能是將圖片的尺寸改成你想要的尺寸,大小的話是web所用格式大小,等頁面載入完你又換原圖,這樣相當於又載入了一遍,還不如做ajax滾動載入。
㈡ PHP等比例壓縮圖片的實例代碼
具體代碼如下所示:
/**
*
desription
壓縮圖片
*
@param
sting
$imgsrc
圖片路徑
*
@param
string
$imgdst
壓縮後保存路徑
*/
public
function
compressedImage($imgsrc,
$imgdst)
{
list($width,
$height,
$type)
=
getimagesize($imgsrc);
$new_width
=
$width;//壓縮後的圖片寬
$new_height
=
$height;//壓縮後的圖片高
if($width
>=
600){
$per
=
600
/
$width;//計算比例
$new_width
=
$width
*
$per;
$new_height
=
$height
*
$per;
}
switch
($type)
{
case
1:
$giftype
=
check_gifcartoon($imgsrc);
if
($giftype)
{
header('Content-Type:image/gif');
$image_wp
=
imagecreatetruecolor($new_width,
$new_height);
$image
=
imagecreatefromgif($imgsrc);
imageresampled($image_wp,
$image,
0,
0,
0,
0,
$new_width,
$new_height,
$width,
$height);
//90代表的是質量、壓縮圖片容量大小
imagejpeg($image_wp,
$imgdst,
90);
imagedestroy($image_wp);
imagedestroy($image);
}
break;
case
2:
header('Content-Type:image/jpeg');
$image_wp
=
imagecreatetruecolor($new_width,
$new_height);
$image
=
imagecreatefromjpeg($imgsrc);
imageresampled($image_wp,
$image,
0,
0,
0,
0,
$new_width,
$new_height,
$width,
$height);
//90代表的是質量、壓縮圖片容量大小
imagejpeg($image_wp,
$imgdst,
90);
imagedestroy($image_wp);
imagedestroy($image);
break;
case
3:
header('Content-Type:image/png');
$image_wp
=
imagecreatetruecolor($new_width,
$new_height);
$image
=
imagecreatefrompng($imgsrc);
imageresampled($image_wp,
$image,
0,
0,
0,
0,
$new_width,
$new_height,
$width,
$height);
//90代表的是質量、壓縮圖片容量大小
imagejpeg($image_wp,
$imgdst,
90);
imagedestroy($image_wp);
imagedestroy($image);
break;
}
}
總結
以上所述是小編給大家介紹的PHP等比例壓縮圖片的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
您可能感興趣的文章:php中10個不同等級壓縮優化圖片操作示例PHP
實現等比壓縮圖片尺寸和大小實例代碼php
gd等比例縮放壓縮圖片函數基於PHP實現等比壓縮圖片大小php上傳圖片並壓縮的實現方法PHP實現圖片上傳並壓縮PHP實現圖片壓縮的兩則實例php使用imagick模塊實現圖片縮放、裁剪、壓縮示例
㈢ php 圖片壓縮顯示
(1)網頁結構里用:<img src="image.php?name=p01.png">,來調用處理後的圖片信息。
(2)在後台腳本 image.php 里對傳過來的圖片名進行處理返回:
<?php
$pic = $_REQUEST['name'];
// 1.打開圖片源文件資源
$im = @imagecreatefrompng($pic);
if ($im) {
// 2.源文件的寬高,也可寫為定值
$fx = imagesx($im); // 取寬
$fy = imagesy($im); // 取高
// 3.使用新的寬高
$sx = 150;
$sy = 100;
// 4.生成小圖資源
$sm = imagecreatetruecolor($sx,$sy);
// 5.進行縮放
imageresampled($sm,$im,0,0,0,0,$sx,$sy,$fx,$fy);
// 6.輸出圖像
header('Content-Type: image/png');
imagepng($sm);
// 7.釋放資源
imagedestroy($sm);
imagedestroy($im);
}
(3)代碼里假設是對 png 圖片處理,相關字都是 png,如果想對 jpg 類型處理的可都換成 jpeg
㈣ php 怎麼壓縮圖片的大小
php壓縮圖片的大小:
<?php
$im=imagecreatefromjpeg('D:phpplace.jpeg');
resizeImage($im,,,'xinde','.jpg');
functionresizeImage($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("imageresampled"))
{
$newim=imagecreatetruecolor($newwidth,$newheight);
imageresampled($newim,$im,,,,,$newwidth,$newheight,$pic_width,$pic_height);
}
else
{
$newim=imagecreate($newwidth,$newheight);
imageresized($newim,$im,,,,,$newwidth,$newheight,$pic_width,$pic_height);
}
$name=$name.$filetype;
imagejpeg($newim,$name);
imagedestroy($newim);
}
else
{
$name=$name.$filetype;
imagejpeg($im,$name);
}
}
㈤ php怎麼對接收的圖片進行壓縮'
現在做圖片上傳,原圖上傳是成功了,但對於壓縮這塊,上網查了很多資料,都是對圖片的寬高進行壓縮
當時就覺得奇怪:寬高壓縮了,圖片就不是原圖大小,再放大應該也會失真
我當時也懷疑是不是根本就不是用於上傳,而僅僅是用於在手機屏幕上的顯示而已
可查到的資料又很清楚的說明了是用於上傳,於是我以為在伺服器解壓縮時有什麼特別的方法可以讓圖片不失真
現在才知道改變bit.compress(Bitmap.CompressFormat.JPEG, 100, fOut);100的這個值就可以壓縮KB大小,而不影響圖片寬高和清晰度。
但是對於在壓縮KB大小前對圖片寬高進行壓縮,這一點能不能解說一下是為什麼呢?這樣上傳的圖片不就跟我帖子中提到的情況一樣了嗎:如果後台不處理,直接保存傳過來的圖片,那麼圖片就會比原圖小很多;如果後台進行放大處理,把傳過來的圖片放大為與原圖一致,圖片就會嚴重失真!
㈥ 怎麼用PHP壓縮GIF圖
縮圖小軟體ImageResizerPowertoys
微軟出品的免費縮圖小軟體,它不但能夠快速、批量地縮小圖片,而且操作超級簡單。安裝結束後,它會在你的滑鼠右鍵菜單中嵌入一個"ResizePicture"項。在圖片文件上點右鍵選這個"ResizePicture"即可設置你希望縮小的圖片尺寸。
JPEG Imager 2.1.2.25 漢化版
JPEG Imager 能將 BMP、JPG、PNG、GIF 等格式的圖形文件進行壓縮,使文件變得更小,可自設壓縮比例、大小、明暗度等等,它採用了一種新壓縮演算法:「智能過濾(smart filtration)」不僅可以改善圖像的觀感質量,而且還可為輸出的圖片「減肥」,允許壓縮後的圖形文件不失真。還可以建立類似於漸變 GIF 效果的漸變式 JPEG 圖像,這種形式的 JPEG 圖像應用於網頁製作可使網頁讀取的速度加快。它的特點還包括對圖像進行批量處理高效建立縮略圖以及利用自帶的濾鏡、圖像編輯器對圖形進行簡單的處理等。
㈦ php圖片上傳能用代碼壓縮圖片文件的大小嗎
圖片的格式是多變的,但是壓縮圖片的方式不變,壓縮軟體壓縮圖片一致都是那樣,我將操作步驟寫下來了,樓主可以看看
1、安裝相對應的輔助工具(迅捷圖片壓縮軟體)運行工具;
2、打開工具,看到頁面上的圖片壓縮選項,點擊這個藍色的按鈕進入將要實行操作的頁面。
3、在頁面上點擊選擇文件按鈕,或是選擇文件夾按鈕,都可以將存放圖片文件的文件夾打開,然後對圖片進行選擇。
4、選擇文件時我們按住多選鍵Ctrl,選擇我們需要壓縮的圖片添加到頁面中間的位置。
5、做到這一步了,下面我們可以對壓縮圖片的壓縮選項做一個選擇,可以轉換圖片的格式,轉化為png或者是jpg,將圖片壓縮可以選擇的壓縮選項如下。
6、將所有的參數設置完成之後我們點擊頁面上的「開始壓縮按鈕就可以進行壓縮了。
日常使用的壓縮圖片的辦法是將圖片壓縮為壓縮包,在使用是還要對其解壓才能使用,這種壓縮方法壓縮圖片不同點在於不會將圖片文件壓縮為壓縮包,能將圖片最大限度的縮小,圖片的狀態不會改變。
㈧ php圖片可以等比例的縮放嗎
可以。
等比例縮放的方法是:
1、載入選區--自由變換。如下圖:
2、按住shift+alt鍵,使用滑鼠調整大小,這種情況下,選區會按照等比例的方法進行縮放的。
㈨ 如何利用php把上傳的圖片壓縮
<?php
//Thefile
$filename='test.jpg';
$percent=0.5;
//Contenttype
header('Content-Type:image/jpeg');
//Getnewdimensions
list($width,$height)=getimagesize($filename);
$new_width=$width*$percent;
$new_height=$height*$percent;
//Resample
$image_p=imagecreatetruecolor($new_width,$new_height);
$image=imagecreatefromjpeg($filename);
imageresampled($image_p,$image,0,0,0,0,$new_width,$new_height,$width,$height);
//Output
imagejpeg($image_p,null,100);
?>
http://php.net/manual/en/function.imageresampled.php
㈩ php壓縮圖片
比如(什麼?)上面有不同大小的圖片--------語文表達缺主語,含糊導致無法理解。
伺服器上面?客戶機上面?具體什麼軟體環境上面?
「有不同大小的圖片」,已經存在的圖片通常已經壓縮過的,像JPEG更是有損壓縮。再次壓縮必定再次會降低畫質。PHP可以再次處理圖片,但畫質和存儲大小不能兼得,畫質好就存儲大,要存儲小就畫質差,根據自己的畫質需求處理。