本文目錄一覽:
- 1、php用GD庫生成圖片用什麼函數能讓字旋轉跟傾斜
- 2、PHP GD如何生成不失真的文字,如何將文字自動換行? – 技術問答
- 3、PHP GD庫生成文字圖片,關於字體大小的數學題
- 4、為什麼使用php GD庫圖片輸出中文字會出現亂碼
php用GD庫生成圖片用什麼函數能讓字旋轉跟傾斜
圖片的旋轉和翻轉也是Web項目中比較常見的功能,但這是兩個不同的概念,圖片的旋轉是按特定的角度來轉動圖片,而圖片的翻轉則是將圖片的內容按特定的方向對調。圖片翻轉需要自己編寫函數來實現,而旋轉圖片則可以直接藉助GD庫中提供的imagerotate()函數完成。該函數的原型如下所示:
複製代碼代碼如下:
resource imagerotate(resource src_im , float angle, int bgd_color [,int ignore_transpatrent])
該函數可以將src_im圖像用給定的angle角度旋轉,bgd_color指定了旋轉後沒有覆蓋到的部分的顏色。旋轉的中心是圖像的中心,旋轉後的圖像會按比例縮小以適合目標圖像的大小(邊緣不會被剪去)。如果ignore_transpatrent被設為非零值,則透明色會被忽略(否則會被保留)。下面以JPEG格式的圖片為例,聲明一個可以旋轉圖片的函數rotate(),代碼如下所示
PHP GD如何生成不失真的文字,如何將文字自動換行? – 技術問答
原帖由 於 2008-12-9 19:13 發表 [i]你好。我加了負號後反而效果變差了。imagettftext輸出的字是不是加粗了的?如何輸出像myspace這樣簡潔明了的字體?28274以下是我的效果。明顯比上圖的粗28275 1)??使用的TTF字體有差異,當然文字有差異2) 自動換行,想都不要想,把字符截取之後,重新算y坐標,重新畫一行3) 字體沒有加粗的說法,要實現加粗的效果,換一個字體,比如黑體
PHP GD庫生成文字圖片,關於字體大小的數學題
有個最簡單的辦法:你把你jquery生成的圖片截圖保存,用PS打開,再新建一個圖片,用同樣的字體一直放大,就知道是多少px了
為什麼使用php GD庫圖片輸出中文字會出現亂碼
原因:
1、服務器編碼原因。由於imagettftext函數字符串參數的默認編碼是UTF8,如果服務器編碼不一致,而又沒有進行相應的字符編碼格式轉換,很容易出現使用gd庫輸出圖片時中文字符變成亂碼。
2、沒有選擇正確的TTF字體文件。使用gd庫時如果要輸出中文字符,需要選擇正確的TTF字體文件。
解決方法:
根據之前介紹的php gd庫產生中文亂碼的原理,解決php gd庫中文亂碼的方法其實很簡單。
1、建議整站使用UTF8編碼,如果你已使用的是GB2312或GBK編碼,請使用iconv或自定義的gb2312與utf8轉換函數進行字符編碼轉換。gb2312與utf8轉換函數請參考PHP Ajax傳值中文字符亂碼如何解決。
2、如果你是剛進行php環境搭建,建議將Apache配置文件中的默認字符集修改為UTF8,即AddDefaultCharset UTF8。
3、如果上述方法還不行,請檢查你在編譯gd庫時是否添加了–enable-gd-jis-conv選項,此選項是為了讓gd庫支持日文編碼的字庫,請取消此選項並重新編譯。此方法我沒驗證過,估計主要是針對Unix下安裝配置php環境。Windows環境一般不會出現這種情況,似乎默認PHP配置文件是注釋掉的。
4、使用php gd庫產生中文亂碼的另一個原因是沒有選擇正確的TTF字體,你需要選擇支持中文的字體,常用的中文字體文件是simsun.ttc和simhei.ttf。
OK,只要按照上述方法,基本上使用php gd庫產生中文亂碼時都能夠解決。只要仔細排查其實gd庫的中文亂碼解決起來非常方便。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/285036.html