ITPub博客

首页 > IT职业 > IT生活 > 隨機播放圖片加字

隨機播放圖片加字

原创 IT生活 作者:yeahokay 时间:2007-07-06 17:27:12 0 删除 编辑
目前有一個很棘手的問題
就是我現再有一個隨機播放圖片的函式
我想在圖片的下面加上公司的名稱
卻遇到了兩個問題
1.再PHP裡頭用JAVA SCRIPT的DOCUMENT要怎把字寫在圖片的下面?!
2.因為我有關連資料庫的問題
程式:
$m_link = uconnect("aigulic2_COR000") ;//這是呼叫資料庫的
$m_query3 = mysql_query("SELECT B.NAME1,A.NO_,A.NAME1
FROM A6200A_IMAGE A LEFT OUTER JOIN A6200A B
ON B.NO_=A.NO_
WHERE A.TYPE_ = 2 AND B.ORDER1='1'",$m_link);
這個因為有關聯
A和B的攔位名稱有一樣的NAME1
雖然名稱一樣
但是戶部關聯
A的是圖片的名稱
B的是公司的名稱
那我到函數中要如何分辨是哪一個的NAME1呢?!
第二個問題卡在:
echo "";//宣告一javascript陣列 --> 存圖片的名稱(A的NAME1)
echo "";//宣告一javascript陣列 --> 存客戶的編號
echo "";//-->存公司的名稱(B的NAME1)
while($a_record = mysql_fetch_array($lc_query)){
echo "";//給定javascript陣列值 --> 所有圖片的名稱
$m_i=$m_i+1;
}




將圖片寫入至原本的IMG物件的程式碼
echo "";



**********************************以下為有需要在看就好了************************************************


整個函數的程式碼:
//****************************讓圖片能再輪流替換,於指定的時間內依次替換完畢
function ureplace($lc_query,$ln_second=2000,$ln_num1){
//$lc_query 為sql語言傳回的變數
//$ln_second 幾秒呼叫test2()函數(不傳入,則預設為2秒)
//$ln_num1 為此網頁連結的總數
//之後的參數則傳入要替換圖片的物件名稱,沒限定傳入幾個
$m_img = func_get_args() ;
$m_alen = count($m_img) ;
$m_alen_count=$m_alen-3;
if(gettype($m_img[1])!=integer){//判斷第二個參數是否為數值
umsg("請傳入第二個參數,或第二個參數需為數值");
}
else{
$m_num=mysql_num_rows($lc_query);//求出資料筆數,以利得知陣列元素個數(陣列是從0為起始,所以總筆數要-1,才是陣列元素的總各數)
$m_i = 0;
echo "";//宣告一javascript陣列 --> 存圖片的名稱
echo "";//宣告一javascript陣列 --> 存客戶的編號
echo "";
while($a_record = mysql_fetch_array($lc_query)){
echo "";//給定javascript陣列值 --> 所有圖片的名稱
$m_i=$m_i+1;
}
echo "";//宣告一javascript陣列 --> 存要替換的圖片物件名稱
$m_m=0;
for($m_j=3;$m_j<$m_alen;$m_j++){
echo "";//給定javascript陣列值 --> 給的參數要替換的圖片物件名稱
$m_m=$m_m+1;
}
echo "";
//↑呼叫javescript內建函數setInterval計時器(每$ln_second秒,呼叫test2()函數一次)
}

echo "";
}
?>

使用時是這樣使用的

$m_link = uconnect("aigulic2_COR000") ;
$m_query3 = mysql_query("SELECT B.NAME1,A.NO_,A.NAME1
FROM A6200A_IMAGE A LEFT OUTER JOIN A6200A B
ON B.NO_=A.NO_
WHERE A.TYPE_ = 2 AND B.ORDER1='1'",$m_link);
ureplace($m_query3,3000,12,"img1","img2","img3","img4");
?>

















可參考
http://www.aiguli.com
此網頁的[ 白金商店廣告輪播窗口 ][@more@]

1.再PHP裡頭用JAVA SCRIPT的DOCUMENT要怎把字寫在圖片的下面?!

ANS : 您是要將字放在圖片上面還是放在圖片 的 HTML 下面.

如果是放在圖片上 你可以參考我寫的這支程式 :

沒有寫的很完整還有很大的改善空間 , 喜歡的可以拿去用.

function ecstart_convert_jpeg($src_file,$dst_file,$text_type,$text_image,$watermark_type,$watermark_image,$pic_width,$pic_height){

//$src_file 來源圖片路徑
//$dst_file 存檔圖片路徑
//$text_type 是否插入文字
//$text_image 插入的文字內容
//$watermark_type 是否插入浮水印
//$watermark_image 圖水印圖片路徑
//$pic_width 存檔圖片寬度
//$pic_height 存檔圖片高度
$image = imagecreatefromjpeg($src_file) ;
$s_width = imagesx($image);
$s_height = imagesy($image);


// 縮圖大小
$thumb = imagecreatetruecolor($pic_width, $pic_height);
// 自動縮圖
imagecopyresized($thumb, $image, 0, 0, 0, 0, $pic_width, $pic_height, $s_width, $s_height);
//imagejpeg($thumb,"/tmp/tmpfile.jpg","100");
//$thumbimage = imagecreatefromjpeg("/tmp/tmpfile.jpg") ;


// 取得寬度
$i_width = imagesx($thumb);
$i_height = imagesy($thumb);

//imagejpeg($image,"/home/www/ecstart.com/public_html/cart/test.jpg","100");
//imagejpeg($image);

// 計算 插入文字出現位置
$ywpos = $i_height - 35 ;
// 設定 插入文字
$textcolor = imagecolorallocate($thumb, 250, 250, 250);

// 插入文字
if($text_type == "Y"){
imagestring($thumb, 5, 25, $ywpos, $text_image, $textcolor);
}
// 載入浮水印圖
$w_image = imagecreatefromjpeg($watermark_image) ;
// 取出浮水印圖 寬 與 高
$w_width = imagesx($w_image);
$w_height = imagesy($w_image);
// 計算 浮水印出現位置
$xpos = $i_width - $w_width -20 ;
$ypos = $i_height - $w_height-20 ;

//結合浮水印
if($watermark_type == "Y"){
imagecopy($thumb,$w_image,$xpos,$ypos,0,0,$w_width,$w_height);
}

imagejpeg($thumb,$dst_file,"100");


imagedestroy($thumb);
imagedestroy($image);
imagedestroy($w_image);
}

==============================
如果是放在HTML 圖片的下面... K 一下 JAVASCRIPT 的書就可以找到答案

2.因為我有關連資料庫的問題

ANS : 如果你擔心 FILED 名稱重覆問題 , 你可以用 FIEND AS ANAME 來吐出你要的欄位內容.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/786540/viewspace-924633/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    140
  • 访问量
    1115928