我目前使用 PHP GD库。
我的目标是创建用于打印600DPI邮票的文本图像。
为了做到这一点,并且由于GD库的限制,我试图将宽度,高度和字体的大小分解,然后调整大小。不幸的是,这没有帮助。
是否可以在GD库中设置生成图像的DPI? 如果没有,还有其他选择吗?
如果在PHP中不可能,请转介给我。
答案 0 :(得分:0)
我不太确定你想要创建什么样的东西,但是你可能会对ImageMagick有所好转,它可以免费安装在大多数Linux发行版上,也适用于OSX和Windows。
您可以在命令行中使用这样的命令进行游戏,看看它是否能满足您的需求,然后转换为PHP,Perl,Ruby或ImageMagick绑定的任何其他语言。
convert -density 600 -units pixelsperinch \
-size 2500x2000 gradient:red-blue \
-pointsize 14 -font Trattatello \
-gravity southeast \
-fill black -stroke white -strokewidth 2 \
-draw "text 25,25 'Go ImageMagick'" image.jpg
使用identify
检查我们创建的内容:
identify -verbose image.jpg
<强>输出强>
Format: JPEG (Joint Photographic Experts Group JFIF format)
Mime type: image/jpeg
Class: DirectClass
Geometry: 2500x2000+0+0
Resolution: 600x600
Print size: 4.16667x3.33333
Units: PixelsPerInch
Type: TrueColor
...
...
如果您有更复杂的布局需求,也可以使用Pango
或Postscript。有很多例子here。