首页 > 语言 > 关键词  > php最新资讯  > 正文

PHP的GD函数imagettftext()要注意默认字符编码

2009-04-14 13:50 · 稿源: www.cnzzad.com

这阵子在开发一个小功能,就是类似论坛个性签名的东西,根据会员信息自动生成一张图片上面还有文字的那种。图片的拼合用imagecopy()和imagecopyresampled()等函数就可以搞定,到了画文字的时候遇到了一个难题。

文字的模板是保存在一个文本文件中,程序先读取这个文件然后用数据替换掉里面的变量,再使用imagettftext()函数画到图片上,不幸的是画出来的图片居然是乱码@_@……于是上Google搜索相关的问题,发现大部分人都是在说imagettftext()函数中传递的字串要UTF-8编码,而PHP官方手册中也明确写着“UTF-8编码的字串可以直接传递”,可问题是模板文件的编码本来就是UTF-8的,这就有点莫名其妙了。无奈之下我用EmEditor打开原来的模板文件,尝试转换成不同的编码后和GD输出的乱码做对比,结果发现转换到EUC-JP编码的时候居然和GD输出的乱码吻合了……也就是说,这里服务器上GD的默认编码是EUC-JP,而那是一种日文编码。

查找了一下php.ini的设置没有发现相关选项,于是又一个问题来了,这个默认编码是在哪里设置的呢?还是史文大哥牛,发现了PHP 编译参数里面有一个“–enable-gd-jis-conv”的参数十分可疑,Google一下果然发现了很多乱码问题与这个编译参数有关……官方给出的参数说明是“GD: Enable JIS-mapped Japanese font support.”,也就是让GD支持日文编码的字库(可恶,为什么没有支持中文编码字库的编译选项……PHP也国籍歧视么= =b),说白了开启了这个选项的话GD就会把TTF字库中大于127的部分(即不属于标准拉丁文字库的部分)按照日文JIS的顺序来映射,那么用来映射中文字体的时候自然就变成乱码了。二话不说,去掉这个选项重新编译,问题解决。去掉这个选项之后,imagettftext()的默认编码就变成了UTF- 8,就可以正常显示中文了~

举报

  • 相关推荐
  • ppt自动生成工具最好用的3个

    文章介绍了当前AI生成PPT工具的发展现状,重点推荐了"秒出PPT"这一专业平台。该平台具有三大特色功能:1)智能对话式生成,支持中途修改需求;2)提供三种编辑模式(纯文本、纯设计和文本+设计);3)支持导入文档自动排版,提供"保持原文"和"AI智能修改"两种模式。平台还拥有丰富的模板库,支持在线更换颜色、字体等设计元素。虽然需要购买会员,但相比市面上质量参差不齐的同类产品,该工具在交互体验和功能完整性上表现突出。

  • OPPO首款内置风扇手机!OPPO K13 Turbo跑分出炉:确认骁龙8s Gen4

    这款新机还有一个非常重要的亮点内置风扇手机,这也是OPPO首款自带风扇的手机。 该机后置主摄下方有一个风扇开孔,可以迅速散发内部热量。 风扇模组采用电镀镍工艺,放弃普通喷涂,带来更好的防水、防锈效果,并且号称风力提升120%,从而实现更强、更持久的游戏性能。 第四代骁龙8s的性能大家已经在测试中看到了,采用4nm打造,全大核方案,安兔兔跑分能突破240万�

  • Perplexity推出AI浏览器Comet:想用得开1400元/月的订阅

    由英伟达支持的Perplexity AI推出了一款名为Comet的AI驱动网络浏览器。 Comet浏览器的核心卖点是其AI驱动的交互体验,公司表示它将整个浏览会话转变为单一、无缝的交互,将复杂的工作流程简化为流畅的对话。

  • ChatGPT们重塑了对话框,钉钉今天要重塑表格

    ​自从1979年,丹·布里克林(Dan Bricklin)和鲍勃·弗兰克斯顿(Bob Frankston)在苹果当时划时代的 Apple II 电脑上做出了第一张可以自动计算和更新的电子表格 VisiCalc 后,表格就成为了计算机用数据方式理解人类世界的基座。不过,在更多的时候,没人这样讨论它。横横竖竖几个格子,表格无处不在,它看起来太普通了。 然而计算机诸多繁荣的根基,都建立在一张张表格之上,无�

  • OPPO K13 Turbo系列真机亮相:自带风扇+RGB

    OPPO K13 Turbo系列真机已经现身在bilibili world《胜利女神:NIKKE》展区。 从图片来看,OPPO K13 Turbo系列系列后摄区域有点类似一加13T,采用了矩形金属方案,主摄下方就是散热风扇,同时外圈还自带RGB等效。 这个设计方案可以明显看出,该机是主打电竞体验。 风扇模组采用电镀镍工艺,放弃普通喷涂,带来更好的防水、防锈效果,并且号称风力提升120%,从而实现更强、更持久�

  • 中国无纸化2024年度TOP10企业重磅发布!itc保伦股份荣获全国第一!

    ITC保伦股份凭借技术实力和广泛市场覆盖,在2024年中国无纸化企业市场排名中位居榜首。其无纸化会议系统实现全流程管理,满足文档发送、阅读、共享、交流等需求,并整合会议生态,提供扩声、语音转写、视频会议等功能。公司拥有80亩工业园和16000平方米全自动生产车间,产品覆盖党政机关、法院、医院等多个领域。ITC坚持国产化研发,采用SM2、SM3、SM4国密算法保障信息安全,已成功应用于杭州亚运会等多个重要项目。随着数字化浪潮推进,无纸化作为数字化基石的重要性日益凸显,ITC将继续引领技术创新,推动行业迈向更智能、安全、普惠的未来。

  • TikTok电商抢滩日本,有哪些机遇和挑战?

    ​TikTok电商全球化布局再落一子。 6月30日,TikTok正式在日本上线电商业务,核心模式为直播带货。品牌、卖家及创作者可通过发布含购物功能的视频或直播,在TikTok内直接销售商品。 在东南亚、美区等市场,TikTok电商已证明了其直播带货模式的爆发力。如今全球化布局再下一城,给从业者带来了哪些新的机遇和挑战? TikTok Shop在日本上线 早在4月28日,TikTok日本正式宣布推出

  • 曝华为Mate XTs九月登场:鸿蒙最强三折叠

    博主厂长是关同学爆料,华为Mate XTs 9月份到来,这是华为Mate XT的小改款,能力大大提升。 据悉,华为Mate XTs将搭载全新的麒麟芯片,同时提升影像和耐用性,出厂搭载原生鸿蒙,是鸿蒙史上最强三折叠屏。 在去年9月,华为推出了首款三折叠屏Mate XT非凡大师,开创了智能手机新形态,这款旗舰一经发布就引发关注,有数百万人参与预约,首销期间在黄牛渠道更是溢价数万元�

  • AI日报:智谱上线PPT生成功能AI Slides;可灵 AI 发布可图2.1模型

    本文介绍了AI日报栏目及近期AI领域多项突破性进展:1)智谱推出免费AI Slides工具,基于GLM模型快速生成高质量PPT;2)可灵AI发布可图2.1模型,支持180多种风格图像生成;3)NVIDIA推出DiffusionRenderer技术,实现视频到可编辑3D场景转换;4)墨刀AI新增30秒生成高保真原型功能;5)Higgsfield推出Soul ID工具,10张照片即可生成虚拟形象;6)谷歌DeepMind开源GenAI Processors工具库;7)谷歌Veo新增图像转视频功能;8)Mistral AI发布专为代码建模的Devstral2507系列模型。这些创新展示了AI在内容生成、3D建模、产品设计等领域的快速发展。

  • VT Markets第三季市场分析:央行购金速度放缓 金价能否迎来新高?

    2025年第二季度国际黄金市场呈现高位震荡态势。4月初受美国关税政策影响,金价一度攀升至3500美元/盎司历史新高,但随后涨幅收窄至5%,远低于第一季度的20%。地缘政治冲突对金价的提振作用仅维持两周,显示短期影响特征。全球央行购金速度放缓,4月净买入量环比下降12%;黄金ETF持仓量增速明显放缓,北美地区5月出现净流出。分析指出,金价能否持续走强取决于央行购金行为、全球债务风险等基本面因素。技术面显示金价在突破历史高点后进入震荡阶段,但长期仍具上涨潜力。