複製代碼 代碼如下:
#!/usr/local/bin/php -q
author:freemouse
<?php
// 下面是說明.
print ("本程式用於合并2張 640x480大小的.\n");
print ("圖片,並將其轉化為一張 400x300 大小的圖片\n");
print ("需要指定存放合成前圖片(a.jpg,b.jpg)的預設目錄\n");
print ("產生的圖片將會儲存為c.jpg\n");
//預設目錄,自己編輯吧^_^
$d="/home/freemouse/Desktop";
print ("目前的目錄為: $d\n");
print (" 圖片 a.jpg 位移, 0-100: ");
$fp = fopen("php://stdin", "r");
$a = fgets($fp,255);
print (" 圖片 b.jpg 位移, 0-100: ");
$b = fgets($fp,255);
fclose($fp);
$a=$a*3.2;
$a=floor($a);
$b=$b*3.2;
$b=floor($b);
// 將兩張圖片縮放至 640x480 尺寸
exec("縮放至 640x480 -品質 95 " . $d . "/a.jpg");
exec("縮放至 640x480 -品質 95 " . $d . "/b.jpg");
$aa = "轉換 -品質 90 -尺寸 320x480+";
$ab = " " . $d . "/a.jpg";
$bb = " " . $d . "/b.jpg";
$ac = " " . $d . "/aa.jpg";
$cc = " " . $d . "/bb.jpg";
// 縮放後的 a.jpg 另存新檔 aa.jpg
$yy = $aa . $a . $ab . $ac;
print ("$yy\n");
exec($yy);
// 縮放後的 b.jpg 另存新檔 bb.jpg
$zz = $aa . $b . $bb . $cc;
print ("$zz\n");
exec($zz);
// 合并兩張圖片為 c.jpg.
$adjoin = "合成 -品質 80 ";
$adjoin .= $d . "/aa.jpg ";
$adjoin .= $d . "/bb.jpg ";
$adjoin .= $d . "/c.jpg";
print ("$adjoin\n");
exec($adjoin);
// 調整 c.jpg 至 400x300 尺寸 並添加邊框.
$edge="縮放至 400x300 -品質 75 -raise 4x4 -sharpen 1x1 " . $d . "/c.jpg";
print ("$edge\n");
exec($edge);
?>