1. 程式人生 > >通過PHP實現PNG轉JPG

通過PHP實現PNG轉JPG

最近因為專案需要,將網頁儲存的png轉換為jpg,於是結合網上的例子,更改成自己想要的函式。

函式直接在php中呼叫即可,輸入引數為png檔案全路徑,儲存為名字相同的jpg檔案,可以選擇是否刪除原jpg檔案。

程式碼如下:

//png2jpg
function png2jpg($srcPathName, $delOri=true)
{
    $srcFile=$srcPathName;
    $srcFileExt=strtolower(trim(substr(strrchr($srcFile,'.'),1)));
    if($srcFileExt=='png')
    {
        $dstFile = str_replace('.png', '.jpg', $srcPathName);
        $photoSize = GetImageSize($srcFile);
        $pw = $photoSize[0];
        $ph = $photoSize[1];
        $dstImage = ImageCreateTrueColor($pw, $ph);
        imagecolorallocate($dstImage, 255, 255, 255);
        //讀取圖片
        $srcImage = ImageCreateFromPNG($srcFile);
        //合拼圖片
        imagecopyresampled($dstImage, $srcImage, 0, 0, 0, 0, $pw, $ph, $pw, $ph);
        imagejpeg($dstImage, $dstFile, 90);
        if ($delOri)
        {
            unlink($srcFile);
        }
        imagedestroy($srcImage);
    }
}


相關推薦

通過PHP實現PNGJPG

最近因為專案需要,將網頁儲存的png轉換為jpg,於是結合網上的例子,更改成自己想要的函式。 函式直接在php中呼叫即可,輸入引數為png檔案全路徑,儲存為名字相同的jpg檔案,可以選擇是否刪除原jpg檔案。 程式碼如下: //png2jpg function png2j

php實現tifjpg

public function tifToJpg($filename){  $filepath = 'D:/xampp/htdocs//';          $jpgfilename = substr($filename,0,strrpos($filename,'.')).

FFmpeg程式碼實現視訊jpg圖片

程式碼實現視訊轉圖片主要是使用了FFmpeg視訊編解碼相關的知識,所以首先了解下FFmpeg中的編解碼相關函式以及流程,後面再看程式碼就會比較輕鬆了。 視訊解碼 開啟輸入檔案 avformat_open_input 找到視訊流 av_find_best_stream 找到對應的解碼器 avc

通過反射實現物件JSON

這是一個將基本類、map集合、不是基本型別的欄位、list陣列、set陣列轉為json格式的util工具類 寫的不好,多多指教,希望大家有好的意見請提出。 public class JsonUtils { /** * @param o

PHP 實現數字字母,生成Excel列標

/**  * 數字轉字母 (類似於Excel列標)  * @param Int $index 索引值  * @param Int $start 字母起始值  * @return String 返回字母  */ function IntToChr($index, $start

終端中使用SS代理——通過Privoxy實現socks5http代理

使用ss客戶端的時,瀏覽器不用任何配置就可以走socks5代理(大部分瀏覽器預設支援socks5),但是在終端或者其他軟體中應該如何配置配置代理呢?當然主要是配置http/https代理,支援socks5就不多說了,這是就需要將sokcs5轉為http/https代理才行,用

Java實現圖片(jpg/png)成TIF格式(300dpi)踩坑筆記

一、TIF/TIFF介紹 引用百度百科的一句話總結: 標籤影象檔案格式(Tag Image File Format,簡寫為TIFF)是一種靈活的點陣圖格式,主要用來儲存包括照片和藝術圖在內的影象。 二、轉換TIF所需要的jar包 需要3個jar包: jai_

java語言通過Aspose元件 實現wordpdf、png、html..

    :使用Aspose元件可以實現word向DOC, DOCX, OOXML, RTF HTML,OpenDocument, PDF,EPUB, XPS, SWF 轉換 由於基本方法都一樣,在此我只展示word轉pdf的功能      前期準備: MyEcl

PHP將透明圖片(PNG)合併到JPG圖片上,實現PNG透明部分透明的效果。

有2張圖片,第一張為背景底圖,jpg格式,簡稱為背景圖片;第二張為放在背景圖片上的圖片,png格式,有一部分是透明的,簡稱為目標圖片。要實現的效果是將目標圖片放到背景圖片上,目標圖片透明的部分要透明。程式碼其實很簡單,最關鍵的地方就是一定要用imagecopy這個函式。所有的

駝峰命名和下劃線命名互php實現

res rst 命名 turn case rds rto step class 駝峰命名和下劃線命名經常需要互轉,下面提供兩種php的實現方式.第一種方法效率相對差一些,實現方式如下: //駝峰命名轉下劃線命名 function toUnderScore($str

PHP通過反射實現對象的成員方法調用

php reflection class Food { public $name = 'apple'; } class Person { const SEX = 'boy'; public $name; private $age;

實現htmlpng

rgb 拷貝 callback 缺失 另存為 輸出 play clear com 公司要求將一些重要數據全部以圖片的形式放在官網上,防止網絡爬蟲。 之前都是UI作圖,人工上傳,為了解放生產力,於是我們程序處理。 步驟: 1、html得到與原圖一致的圖片(交給前端處理)

PHP實現URL長連接短連接方法總結

inno class data hash nginx服務器 () 屬於 oca str 短鏈接,通俗來說,就是將長的URL 網址,通過程序計算等方式,轉換為簡短的網址字符串。 這樣的話其好處為:1、內容需要;2、用戶友好;3、便於管理。 實現短網址(short URL)

WPF MVVM模式中,通過命令實現窗體拖動、跳以及顯隱控制

原文: WPF MVVM模式中,通過命令實現窗體拖動、跳轉以及顯隱控制 在WPF中使用MVVM模式,可以讓我們的程式實現介面與功能的分離,方便開發,易於維護。但是,很多初學者會在使用MVVM的過程中遇到一個顯而易見且無法迴避的問題,那就是不同的窗體之間如何跳轉?很多人在介紹MVVM的使用時,都沒有明顯提到該

()通過組合語言實現C協程

轉自:http://www.cnblogs.com/sniperHW/archive/2012/06/19/2554574.html 協程的概念就不介紹了,不清楚的同學可以自己google,windows和unix like系統本身就提供了協程的支援,windows下叫fiber,unix like系統下叫

td中通過button繫結click事件實現,以及獲取同一table中另一td的值

1、通過button繫結事件跳轉到同一頁面的其他div 例: js頁面 <table id = "tableid"> <tr> <td id = "rcode">"123456"</td> <td><butto

[那些年踩過的坑]pdf轉換為圖片的教程(pdf的Base64轉換為圖片的base64和自己不通過第三方來實現pdf圖片的Dome)

  因為工作需要,要把PDF的64字串轉換為圖片的base64儲存到資料庫,但是看了看國內外,一方面是做這個的比較少,還有就是做這個真的很煩.   PDF轉圖片呢,大概的實現思路方式一般有兩種,一種就是重繪,類似於畫畫,把看到的畫到新的畫布上;第二種呢,就會識別裡面的內容複製到新的畫布上,我也不知道我比喻準

【解決】php實現頁面登入註冊功能並實現

目錄如下:   思路是不通過資料庫等操作實現頁面(頁面比較簡陋,請笑納) 關於register功能 html頁面必要的表單功能 在頭部寫上 寫上條件判斷 if ($_SERVER['REQUEST_METHOD'] === 'POST') { login();

【解決】php實現頁面登錄註冊功能並實現

apple osi posit cti 轉化 put glob log lin 目錄如下: 思路是不通過數據庫等操作實現頁面(頁面比較簡陋,請笑納) 關於register功能 html頁面必要的表單功能 在頭部寫上 寫上條件判斷 if ($_SERVER[‘REQU

php實現頁面跳方法彙總

一共有三種方法實現頁面跳轉,分別利用php提供的header()、html meta標籤、JavaScript指令碼。 header() header()方法通過設定http響應頭中的location域實現跳轉。這種跳轉實現對使用者是不可見的,有瀏覽器直接執行