導航:首頁 > 文字圖片 > php文字圖片

php文字圖片

發布時間:2023-02-04 21:31:42

⑴ php在圖片上添加文字,大神們看看哪裡出錯了提示我:圖像因為出錯,無法顯示。如下圖

你上面生成的jpeg,
下面用png輸出不太妥當吧
imagejpeg()

⑵ php如何實現讓加入圖片的文字居中

如果使用的是GD庫,可以使用這個函數寫字元串

boolimagestring(resource$image,int$font,int$x,int$y,string$s,int$col)

⑶ php如何生成加粗或者斜體的文字樣式圖片

  1. 加粗或者斜體的文字可以用php的函數控制.我想你是想生成驗證碼圖片是嗎?

  2. 如果是想生成驗證么圖片有幾個函數可以考慮

    imagecreate($length,$height)創建圖片.參數是圖片的寬度和高度

    imagecolorallocate($image,$r,$g,$b)設置背景色,r b g就是圖片的三色rgb參數.這個可以由傳入0-255的隨機數決定隨機的背景色.還可以生成字體色

    imagettftext($_image,$fontSize,mt_rand(-40,70),$codeNX,$fontSize*1.5,$_color,$ttf,$code[$i]);寫入隨機的文字,這里要一個字一個字寫.所以這個函數要循環調用.

    網路了一下 找到了一個類...如下


  3. <?php
    /**
    *安全驗證碼
    *
    *安全的驗證碼要:驗證碼文字扭曲、旋轉,使用不同字體,添加干擾碼。
    *如果用中文做驗證碼(我這里不是哦,有興趣你來改成用中文的),安全度會更好些,但驗證碼扭曲和旋轉是王道,用了字體也算是已經給字體扭曲了,我就不再去給他添一隻扭曲的足了。
    *可配置的屬性都是一些簡單直觀的變數,我就不用弄一堆的setter/getter了
    *
    *@author流水孟春<cmpan(at)qq.com>
    *@rightNEWBSD
    *@linkhttp://labs.yulans.cn/YL_Security_Secoder
    *@linkhttp://wiki.yulans.cn/docs/yl/security/secoder
    */
    classYL_Security_Secoder{
    /**
    *驗證碼的session的下標
    *
    *@varstring
    */
    publicstatic$seKey='sid.sekey.ylans.cn';
    publicstatic$expire=3000;//驗證碼過期時間(s)
    /**
    *驗證碼中使用的字元,01IO容易混淆,建議不用
    *
    *@varstring
    */
    publicstatic$codeSet='346789ABCDEFGHJKLMNPQRTUVWXY';
    publicstatic$fontSize=25;//驗證碼字體大小(px)
    publicstatic$useCurve=true;//是否畫混淆曲線
    publicstatic$useNoise=true;//是否添加雜點
    publicstatic$imageH=0;//驗證碼圖片寬
    publicstatic$imageL=0;//驗證碼圖片長
    publicstatic$length=4;//驗證碼位數
    publicstatic$bg=array(243,251,254);//背景

    protectedstatic$_image=null;//驗證碼圖片實例
    protectedstatic$_color=null;//驗證碼字體顏色

    /**
    *輸出驗證碼並把驗證碼的值保存的session中
    *驗證碼保存到session的格式為:$_SESSION[self::$seKey]=array('code'=>'驗證碼值','time'=>'驗證碼創建時間');
    */
    publicstaticfunctionentry(){
    //圖片寬(px)
    self::$imageL||self::$imageL=self::$length*self::$fontSize*1.5+self::$fontSize*1.5;
    //圖片高(px)
    self::$imageH||self::$imageH=self::$fontSize*2;
    //建立一幅self::$imageLxself::$imageH的圖像
    self::$_image=imagecreate(self::$imageL,self::$imageH);
    //設置背景
    imagecolorallocate(self::$_image,self::$bg[0],self::$bg[1],self::$bg[2]);
    //驗證碼字體隨機顏色
    self::$_color=imagecolorallocate(self::$_image,mt_rand(1,120),mt_rand(1,120),mt_rand(1,120));
    //驗證碼使用隨機字體
    $ttf=dirname(__FILE__).'/ttfs/'.mt_rand(1,20).'.ttf';

    if(self::$useNoise){
    //繪雜點
    self::_writeNoise();
    }
    if(self::$useCurve){
    //繪干擾線
    self::_writeCurve();
    }

    //繪驗證碼
    $code=array();//驗證碼
    $codeNX=0;//驗證碼第N個字元的左邊距
    for($i=0;$i<self::$length;$i++){
    $code[$i]=self::$codeSet[mt_rand(0,27)];
    $codeNX+=mt_rand(self::$fontSize*1.2,self::$fontSize*1.6);
    //寫一個驗證碼字元
    imagettftext(self::$_image,self::$fontSize,mt_rand(-40,70),$codeNX,self::$fontSize*1.5,self::$_color,$ttf,$code[$i]);
    }

    //保存驗證碼
    isset($_SESSION)||session_start();
    $_SESSION[self::$seKey]['code']=join('',$code);//把校驗碼保存到session
    $_SESSION[self::$seKey]['time']=time();//驗證碼創建時間

    header('Cache-Control:private,max-age=0,no-store,no-cache,must-revalidate');
    header('Cache-Control:post-check=0,pre-check=0',false);
    header('Pragma:no-cache');
    header("content-type:image/png");

    //輸出圖像
    imagepng(self::$_image);
    imagedestroy(self::$_image);
    }

    /**
    *畫一條由兩條連在一起構成的隨機正弦函數曲線作干擾線(你可以改成更帥的曲線函數)
    *
    *高中的數學公式咋都忘了涅,寫出來
    * 正弦型函數解析式:y=Asin(ωx+φ)+b
    *各常數值對函數圖像的影響:
    *A:決定峰值(即縱向拉伸壓縮的倍數)
    *b:表示波形在Y軸的位置關系或縱向移動距離(上加下減)
    *φ:決定波形與X軸位置關系或橫向移動距離(左加右減)
    *ω:決定周期(最小正周期T=2π/∣ω∣)
    *
    */
    protectedstaticfunction_writeCurve(){
    $A=mt_rand(1,self::$imageH/2);//振幅
    $b=mt_rand(-self::$imageH/4,self::$imageH/4);//Y軸方向偏移量
    $f=mt_rand(-self::$imageH/4,self::$imageH/4);//X軸方向偏移量
    $T=mt_rand(self::$imageH*1.5,self::$imageL*2);//周期
    $w=(2*M_PI)/$T;

    $px1=0;//曲線橫坐標起始位置
    $px2=mt_rand(self::$imageL/2,self::$imageL*0.667);//曲線橫坐標結束位置
    for($px=$px1;$px<=$px2;$px=$px+0.9){
    if($w!=0){
    $py=$A*sin($w*$px+$f)+$b+self::$imageH/2;//y=Asin(ωx+φ)+b
    $i=(int)((self::$fontSize-6)/4);
    while($i>0){
    imagesetpixel(self::$_image,$px+$i,$py+$i,self::$_color);//這里畫像素點比imagettftext和imagestring性能要好很多
    $i--;
    }
    }
    }

    $A=mt_rand(1,self::$imageH/2);//振幅
    $f=mt_rand(-self::$imageH/4,self::$imageH/4);//X軸方向偏移量
    $T=mt_rand(self::$imageH*1.5,self::$imageL*2);//周期
    $w=(2*M_PI)/$T;
    $b=$py-$A*sin($w*$px+$f)-self::$imageH/2;
    $px1=$px2;
    $px2=self::$imageL;
    for($px=$px1;$px<=$px2;$px=$px+0.9){
    if($w!=0){
    $py=$A*sin($w*$px+$f)+$b+self::$imageH/2;//y=Asin(ωx+φ)+b
    $i=(int)((self::$fontSize-8)/4);
    while($i>0){
    imagesetpixel(self::$_image,$px+$i,$py+$i,self::$_color);//這里(while)循環畫像素點比imagettftext和imagestring用字體大小一次畫出(不用這while循環)性能要好很多
    $i--;
    }
    }
    }
    }

    /**
    *畫雜點
    *往圖片上寫不同顏色的字母或數字
    */
    protectedstaticfunction_writeNoise(){
    for($i=0;$i<10;$i++){
    //雜點顏色
    $noiseColor=imagecolorallocate(
    self::$_image,
    mt_rand(150,225),
    mt_rand(150,225),
    mt_rand(150,225)
    );
    for($j=0;$j<5;$j++){
    //繪雜點
    imagestring(
    self::$_image,
    5,
    mt_rand(-10,self::$imageL),
    mt_rand(-10,self::$imageH),
    self::$codeSet[mt_rand(0,27)],//雜點文本為隨機的字母或數字
    $noiseColor
    );
    }
    }
    }

    /**
    *驗證驗證碼是否正確
    *
    *@paramstring$code用戶驗證碼
    *@returnbool用戶驗證碼是否正確
    */
    publicstaticfunctioncheck($code){
    isset($_SESSION)||session_start();
    //驗證碼不能為空
    if(empty($code)||empty($_SESSION[self::$seKey])){
    returnfalse;
    }
    //session過期
    if(time()-$_SESSION[self::$seKey]['time']>self::$expire){
    unset($_SESSION[self::$seKey]);
    returnfalse;
    }

    if($code==$_SESSION[self::$seKey]['code']){
    returntrue;
    }

    returnfalse;
    }
    }


    //useage
    /*
    YL_Security_Secoder::$useNoise=false;//要更安全的話改成true
    YL_Security_Secoder::$useCurve=true;
    YL_Security_Secoder::entry();
    */

    /*
    //驗證驗證碼
    if(!YL_Security_Secoder::check(@$_POST['secode'])){
    print'errorsecode';
    }
    */
  4. 這是效果

⑷ PHP代碼中怎麼樣實現文字與圖片的混排實現如圖所示效果,求代碼!

圖片樣式右浮動<img style="float:right">

⑸ PHP大神求教 因為上傳文字和圖片是兩個類怎麼把兩個數據組合到一起

你應該說的是兩個請求吧,一般上傳圖片是採用的二進制的傳輸,而文字的採用的是字元的傳輸,所以一般不會把兩個放到一起。之前做過一個偽ajax的傳輸方式,是使用的iframe做的。上傳和文字的數據提交還是分開的,只是上傳圖片的是使用iframe,所以頁面沒有刷新,看起來就像是一起提交了

⑹ PHP後台添加圖片信息和文字信息

同時上傳啊,比如先inster文字信息進庫,query成功之後,再上傳圖片。
當然也可以先上傳圖片,再文字入庫,文字入庫不成功的話,再unlink(刪除)掉圖片。
上傳是沒有先後次序的。所有數據一起被發往伺服器。
(你的在線編輯器不錯,能發我一個嗎?[email protected])謝謝。有空我們還能多多交流。QQ就是前面那個數字了。
順便貼個上傳代碼給你
if($upload_file !="")
{
$upload_file_name='XXXXXX';
if($upload_file){
$file_size_max = 8388608;// 10M限制(bytes)
$store_dir = "./XXXX/";// 上傳位置
$accept_overwrite = 1;//是否允許覆蓋
// 檢查文件大小
if ($upload_file_size > $file_size_max) {
echo '<div align="center">對不起,你的圖片容量大於規定</div>';
exit;
}
// 檢查讀寫文件
if (file_exists($store_dir . $upload_file_name) && !$accept_overwrite) {
Echo '<div align="center">存在相同文件名的圖片</div>';
exit;
}
// 復制文件到指定目錄
if (!move_uploaded_file($upload_file,$store_dir.$upload_file_name)) {
echo '<div align="center">復制圖片失敗</div>';
exit;
}
}
$Erroe=$_FILES['upload_file']['error'];
switch($Erroe){
case 0:
Echo '<div align="center">照片上傳成功</div>'; break;
case 1:
Echo '<div align="center">上傳的圖片超過了系統所允許的最大值.</div>'; break;
case 2:
Echo '<div align="center">上傳的圖片超過了系統所允許的最大值(10M)。</div>'; break;
case 3:
Echo '<div align="center">圖片只有部分被上傳,請在個人信息修改里添加照片。</div>';break;
case 4:
Echo '<div align="center">圖片文件未被上傳,請在個人信息修改里添加照片。</div>';break;
}
}

⑺ PHP怎麼修改網頁文字並提取圖片啊

<?php
$text1="第一句";
$text2="第二句";
$text3="第三句";
$url='http://tp.388g.com/aosbegin00006.php?id=736&text1={text1}&text2={text2}&text3={text3}&text4=undefined&text5=undefined&rnd=';
$url=str_replace('{text1}',urlencode($text1),$url);
$url=str_replace('{text2}',urlencode($text2),$url);
$url=str_replace('{text3}',urlencode($text3),$url);
$url=$url.time();
$content=file_get_contents($url);
preg_match('/<outputimg>.(.*?)</outputimg>/is',$content,$matched);
$imgUrl='http://tp.388g.com'.$matched[1];
echo$imgUrl;
exit;

⑻ PHP 文字生成圖片

imagecolorallocatealpha用這個函數拾取顏色效果會好很多

⑼ 求代碼示例:php將資料庫讀取出來的文字轉成圖片顯示在頁面上

<?php
$Phone=18907975647;#手機號碼,具體從資料庫怎麼讀出來,你自己寫代碼
$im=imagecreate(300,30);#建立一個寬300,高30像素的圖片對象
imagecolorallocate($im,255,255,255);#將圖片背景填充為白色
$Color=imagecolorallocate($im,0,0,0);#在生成一黑色色顏色,以便寫入字元串
imagestring($im,16,0,0,$Phone,$Color);#將字元串寫到圖片上
header('content-type:image/*');//設置文件頭為圖片格式
imagepng($im);//輸出一個png格式的圖片
imagedestroy($im);//銷毀圖片對象

下面寫效果圖:

⑽ php 或 js 怎麼在圖片上添加文字和圖片,

需要擴展GD庫,例如:
<?php
$im = ImageCreate(70,350);
$white = ImageColorAllocate($im,255,255,255);
$black = ImageColorAllocate($im,0,0,0);
ImageTTFText($im,20,270,28,10,$black,'courbi','The courier TTF font');
header('Content-Type: image/png');
ImagePNG($im);
?>
會將文字豎排排列顯示。至於樓主想要的效果,建議樓主先去找一下這方面的資料研究一下吧。很容易的。

閱讀全文

與php文字圖片相關的資料

熱點內容
我姓師的文字圖片 瀏覽:879
男生漂亮手寫字圖片 瀏覽:364
抓馬圖片高清 瀏覽:483
word圖片文字不清晰怎麼處理 瀏覽:614
衣服鞋子搭配圖片男士 瀏覽:710
好看的唯美圖片女生真人 瀏覽:41
全部漫威英雄高清圖片 瀏覽:441
如何正確使用眼霜圖片 瀏覽:119
女孩李寧運動鞋圖片 瀏覽:196
女生胯下部位的圖片 瀏覽:259
淘寶店鋪沒用的圖片如何刪除 瀏覽:419
惡魔霸氣圖片男生 瀏覽:229
巴扎圖片大全高清圖 瀏覽:119
word文檔文字和圖片距離太大 瀏覽:747
古奇男士皮帶圖片價格 瀏覽:810
燙長頭發型圖片長發 瀏覽:253
wps中word圖片適應窗口 瀏覽:199
怎麼更改圖片里的文字word 瀏覽:909
男生街頭圖片夜晚 瀏覽:319
金色翅膀圖片女生 瀏覽:202