php – imagestring创建模糊文本?
我正在使用imagestring在我的图像上绘制小尺寸的文本.我用它来绘制文本($radUrl)并将图像($img)保存到$radPath
imagestring($img,3,8,$radUrl,imagecolorallocate($img,255,0)); imagejpeg($img,$radPath,100); //($radUrl is a string,$radPath is the path to save the image) 它创建的文本模糊不清.阅读太模糊了.图像中已经存在一些甚至更小的预先存在的文本,其清晰且易于阅读. 为什么文本如此模糊,如何解决这个问题? 编辑: 在下面的图像中,顶部的模糊红色文本是使用imagestring创建的文本,并且清晰的白色城市名称已经存储在我服务器硬盘上的原始图像上. 解决方法
您在绿色背景上画红色文本.这是一个可怕的想法,除非你真的想让它变得难以辨认
about 10% of the male population.请停止你正在做的事情,并在继续之前阅读
web accessibility.
您目前所经历的模糊是JPEG压缩的直接结果.原因如下: 人眼对亮度的变化比对颜色的变化更敏感.这是因为人眼比锥细胞含有更多的杆状细胞. JPEG压缩使用chroma subsampling来利用这一事实.通常,与亮度(亮度)相比,色度(颜色)信息被编码为水平的一半和垂直分辨率的一半. 您的红色文本与您放置的绿色背景的亮度几乎完全相同,因此您必须完全依赖低分辨率色度信息才能读取它. 你需要做的是选择更好的颜色.或者更好的是,在图像上绘制一个黑色矩形,并将文本放在其上(使用浅色,如白色或黄色,而不是红色). 但在做任何事情之前,请先阅读网页辅助功能. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |