精品免费在线观看-精品欧美-精品欧美成人bd高清在线观看-精品欧美高清不卡在线-精品欧美日韩一区二区

17站長網

17站長網 首頁 編程 PHP編程 查看內容

PHP函數Imagettftext(),用于寫入帶有表情符號的文本的處理方法

2023-1-19 16:40| 查看: 6234 |來源: 互聯網

我正在使用Imagettftext函數在圖像上寫入文本,但我的文本包含表情符號,它將表情符號替換為方框以下是mycode:$black=imagecolorallocate($main_img,0x00,0x00, ...

我正在使用Imagettftext函數在圖像上寫入文本,但我的文本包含表情符號,它將表情符號替換為方框

以下是mycode:

$black = imagecolorallocate ( $main_img, 0x00, 0x00, 0x00 );
$font_path = "Arial.ttf";
imagettftext ( $main_img, 14, 0, 73, 685, $black, $font_path, $text );

文本示例:

test testt😘 Hello 👋💐 Those 👏  Mega x 👊❤️  Graphic 💋

我已嘗試將字體更改為"Arial Unicode",但未解決問題。

如何解決此問題?

首先,我們需要了解emoji是如何實現的:

Apple PNG圖片(SBIX表)

Apple使用TrueType/OpenType規范的一個專有的、未發布的擴展來實現它,以將PNG圖像添加到字體中。然后,這些PNG圖像顯示在連續文本中。谷歌也實現了類似的東西,但它與蘋果的解決方案不兼容。

Mozilla和Adobe的SVG(SVG表)。

這兩家網絡巨頭為了最雄心勃勃的格式而走到了一起:OpenType中的SVG。我們不是將Unicode字符映射到字形,而是將其映射到SVG圖像。這為我們帶來了SVG的所有可愛的額外功能,包括漸變、嵌入的位圖圖像甚至動畫。從版本26開始,Firefox就已經支持它了!

Microsoft COLR/CPAL

默認情況下,新的Segoe UI Emoji字體的行為與常規TrueType/OpenType字體類似。它有Unicode編碼的、未上色的"基本字形"。但字體中還有兩個附加表:COLR表將作為層的附加字形鏈接到基本字形,并定義這些層的順序。并且CPAL(調色板)表為各個層存儲一個或多個調色板。(不同的調色板對于在深色和淺色背景上顯示字體非常有用。)因此,當支持這一新的顏色功能時,基本字形將被有色層替換。

Google的PNG圖片(CBDT/CBLC表)。

Google提出了一個使用PNG圖像作為字形的實現。字形只是簡單地被好的舊圖像所取代。這對較小的圖標很有效,顯然帶來了位圖圖像的所有創作自由,但伸縮性不是很好。放大一個足夠大的字形,你會遇到模糊的像素。用css更改字形的顏色即使不是不可能,也是很難的。有趣的是,他們指定在他們的實現中不應該有GLYF表--保存未上色的"正常"字形的表--因此,當這種格式不受支持時,看起來沒有退路。它已經在Android和Linux上使用的FreeType中實現,但如果提議使用OpenType,也會將其帶到Windows和Apple計算機上。

最后一種方法是我們感興趣的。這是因為imagefttext是由PHP GD擴展提供的函數。而GD內部使用的是FreeType庫來繪制文本。

從2.5版開始,在FreeType中支持表情符號。嘗試執行php -i命令以查看您有什么版本的FreeType。這是我的:

FreeType Support => enabled
FreeType Linkage => with freetype
FreeType Version => 2.5.2

但是,在嘗試了我發現的一些示例字體here后,PHP一直拋出警告:

Warning: imagefttext(): Could not set character size

恐怕GD library不支持FT_LOAD_COLOR標志。此標志需要有彩色表情符號。請參閱自由類型更改日志:

2013-05-23  Behdad Esfahbod  

    Add support for color embedded bitmaps (eg. color emoji).

    A new load flag, FT_LOAD_COLOR, makes FreeType load color
    embedded-bitmaps, following this draft specification

      https://color-emoji.googlecode.com/git/specification/v1.html

回答您的問題:您不能使用imagefttext獲得彩色笑臉。對不起,😉。

本文最后更新于 2023-1-19 16:40,某些文章具有時效性,若有錯誤或已失效,請在網站留言或聯系站長:[email protected]
·END·
站長網微信號:w17tui,關注站長、創業、關注互聯網人 - 互聯網創業者營銷服務中心

免責聲明:本站部分文章和圖片均來自用戶投稿和網絡收集,旨在傳播知識,文章和圖片版權歸原作者及原出處所有,僅供學習與參考,請勿用于商業用途,如果損害了您的權利,請聯系我們及時修正或刪除。謝謝!

17站長網微信二維碼

始終以前瞻性的眼光聚焦站長、創業、互聯網等領域,為您提供最新最全的互聯網資訊,幫助站長轉型升級,為互聯網創業者提供更加優質的創業信息和品牌營銷服務,與站長一起進步!讓互聯網創業者不再孤獨!

掃一掃,關注站長網微信

大家都在看

    熱門排行

      最近更新

        返回頂部
        主站蜘蛛池模板: 噜噜噜噜精品视频在线观看 | 不卡精品国产_亚洲人成在线 | 国产激情一区二区三区 | 精品精品国产高清a毛片 | 国产精品免费aⅴ片在线观看 | 亚洲精品午夜国产va久久成人 | 免费播放国产性色生活片 | 香港经典a毛片免费观看看 香港黄页亚洲一级 | 亚洲精品一区二区ai换脸 | 任我爽在线视频精品凹凸精品分类 | 国产成+人+综合+欧美 亚洲 | 日本一区二区三区有限公司 | 中国国产xxxx免费视频 | 久热国产视频 | 网友自拍区一区二区三区 | 在线欧美69v免费观看视频 | 永久免费的啪啪免费的网址 | 午夜国产福利视频一区 | 亚洲 欧美 日韩在线一区 | 国内精品免费视频自在线 | 国产精品 视频一区 二区三区 | 国产福利视频一区二区三区 | 国产精品反差婊在线观看 | 超级成人97碰碰碰免费 | 之后3在线观看完整免费酷客 | 成人免费网站视频 | 2021久久精品国产99国产 | 欧美性一区二区三区 | 亚洲最大免费视频网 | 久久亚洲人成国产精品 | 8小8x免费观看2020麻豆 | 91在线 | 亚洲 | 一区二区三区无码高清视频 | 色婷婷久久综合中文久久一本` | 天天久久综合 | 拍拍视频免费观看网站在线观看 | 久久在线视频免费观看 | 青青草国产97免久久费观看 | 综合另类 | 久久精品免视看国产成人2021 | 亚洲精品色 |