php上傳圖片按比例縮小(php圖片壓縮成指定大小)

本文目錄一覽:

php按寬度縮放圖片?

我不明白你的意思,如果你是想比如用戶上傳了一個圖片,然後你用php自動等比縮小圖片,然後將縮小後的圖片再保存到服務器上,我不曉得怎麼做,因為我不會用php。

不過如果僅僅是調用img 然後讓img等比縮小在頁面中顯示,為什麼不能用CSS+js

css{

max-height:100px;

max-width:100px; /*圖片等比例縮小,最大寬度和高度都是100px,可以自己改變,原圖沒有超過設置的大小,輸出就是原圖大小*/

}

IE6不支持MAX屬性

然後再加一段js去實現在IE6下的img等比縮放大小,網上有源代碼。

如何實現php圖片等比例縮放

$imgsrc=$image_name;

$imgdst=$image_name;

list($width,$height,$type)=getimagesize($imgsrc); 

$new_width = ($width600?600:$width)*0.9; 

$new_height =($height600?600:$height)*0.9; 

$giftype=check_gifcartoon($imgsrc); 

$image_wp=imagecreatetruecolor($new_width, $new_height); 

$image = imagecreatefromgif($imgsrc); 

imagecopyresampled($image_wp, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height); 

imagejpeg($image_wp, $imgdst,75); 

imagedestroy($image_wp); 

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);

imagecopyresampled($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);

imagecopyresampled($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);

imagecopyresampled($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上傳圖片並按比例縮放到一定尺寸的程序,非常感謝

public function upimges(){

    $filename = time();

    header(“Content-Type:text/html;charset=utf-8”);

    $upload = new Upimage(”,”,”,”,$filename);

    //設置上傳文件大小

    $upload-maxSize  = 100000000000000 ;

  //  $upload-saveRule =microtime().’_’.mt_rand(1000,9999);

    //上傳文件命名規則time uniqid com_create_guid 等

    //  $upload-$saveRule = time() ;

    //設置上傳文件類型

    $upload-allowExts  = explode(‘,’,’jpg,gif,png,jpeg’);

    //設置附件上傳目錄

    $upload-savePath =  ‘./data/attached/skp/’.$_SESSION[‘formtoken’].’/’;

    $upload-thumb  =  true;

    // 設置引用圖片類庫包路徑

    $upload-imageClassPath = ‘./Image.php’;

    //設置需要生成縮略圖的文件後綴

    $upload-thumbPrefix = ‘thumb_,thumbm_,thumbl_,thumbs_’;//生產4張縮略圖

    //設置縮略圖最大寬度

    $upload-thumbMaxWidth = ‘960,480,120,64’;

    //設置縮略圖最大高度

    $upload-thumbMaxHeight = ‘960,480,120,64’;

    //刪除原圖

    $upload-thumbRemoveOrigin = false;

    if(!$upload-upload()) {

        $data[‘tip’] = $upload-getErrorMsg();

        $data[‘status’] = ‘0’;

    }else{

        $info = $upload-getUploadFileInfo();

        $data[‘counts’] = count($info);

        $data[‘status’] = ‘1’;

        $data[‘tip’] = ‘上傳成功’;

        $data[‘info’] = $info;

    }

    echo json_encode($data);

    }

這個是代碼和所引用的

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/282576.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-22 08:05
下一篇 2024-12-22 08:05

相關推薦

  • Akka 設置郵箱大小的方法和注意事項

    為了保障系統的穩定性和可靠性,Akka 允許用戶設置郵箱大小。本文將介紹如何在 Akka 中設置郵箱大小,並且提供一些注意事項,以幫助讀者解決可能遇到的問題。 一、設置郵箱大小 A…

    編程 2025-04-28
  • 谷歌瀏覽器窗口大小調整

    谷歌瀏覽器是當今最流行的網絡瀏覽器之一,它的窗口大小調整是用戶操作其中的一個重要部分。本文將從多個方面對谷歌瀏覽器窗口大小調整做詳細的闡述。 一、窗口大小調整的基礎操作 谷歌瀏覽器…

    編程 2025-04-28
  • 如何通過IDEA設置gradle的heap大小

    在IDEA中設置gradle的heap大小可以有效提高gradle編譯、運行等使用效率,本文將從以下幾個方面介紹如何通過IDEA設置gradle的heap大小。 一、設置gradl…

    編程 2025-04-28
  • 矩陣比較大小的判斷方法

    本文將從以下幾個方面對矩陣比較大小的判斷方法進行詳細闡述: 一、判斷矩陣中心 在比較矩陣大小前,我們需要先確定矩陣中心的位置,一般採用以下兩種方法: 1.行列判斷法 int mid…

    編程 2025-04-28
  • Java Date時間大小比較

    本文將從多個角度詳細闡述Java中Date時間大小的比較,包含了時間字符串轉換、日期相減、使用Calendar比較、使用compareTo方法比較等多個方面。相信這篇文章能夠對你解…

    編程 2025-04-27
  • Python比較兩個數的大小並將它們按照降序輸出

    本篇文章將介紹如何使用Python編寫程序來比較兩個數的大小並將它們按照降序輸出。 一、比較方法 在Python中比較兩個數的大小,我們使用比較運算符,包括: >: 大於 &…

    編程 2025-04-27
  • Java Date 比較時間大小

    本文將從以下方面對 Java Date 比較時間大小進行詳細闡述: 一、比較方法的介紹 Java Date 類提供了多種比較時間大小的方法,其中比較常用的包括: compareTo…

    編程 2025-04-27
  • Linux生成指定大小文件的方法

    一、使用dd命令生成指定大小文件 dd命令是Linux系統自帶的一個工具,可以用來複制文件、轉換文件格式、計算文件哈希值等功能。我們可以使用dd命令來生成指定大小的文件。 # 生成…

    編程 2025-04-23
  • Latex字號大小對照表

    一、從Latex中如何改變文字大小 Latex提供了不同的命令來改變文字大小。這些命令可以通過相對大小或絕對大小進行設置 1、相對大小 通過使用相對大小,我們可以將字體大小設置為當…

    編程 2025-04-18
  • Linux ls按大小排序

    一、Linux ls 按大小排序 在Linux系統中,通過ls命令可以列出當前目錄下的文件和子目錄。其中,文件大小是一項重要的信息,有時需要將文件按大小排序,以方便查找和管理。 使…

    編程 2025-04-13

發表回復

登錄後才能評論