如何在win下使用php的gd库
做了一个图,原来用linux的,后来移植到windows下,发现没有gd库。我直接下的php5的zip包,有php_gd2.dll。
是需要修改某个配置文件么? 1.将PHP5的zip包解压缩到C:\php\下
1.把zip包里的php.ini-recommended拷贝到C:\WINDOWS下,并改名为php.ini
2.设置php.ini中的extension_dir = "C:\php\ext"
3.去掉extension=php_gd2.dll前的注释";" 现在可以了,但是有新问题。我在一台主机上做的,本机图片显示正常。
但在同一局域网内,其他机器看起来还是有错。
我是这样调用字体的:
$stri=iconv("GB2312","UTF-8",$name1);
ImageTTFText ($im, 12, 0, 140, 30, $black, "d://www/font/simsun.ttc", $stri);
它的错误提示说这个路径没有文件。 其他机器访问的时候d://www/font/simsun.ttc这种绝对路径就会有问题了
1.将simsun.ttc字体文件拷贝到你的web程序下,诸如/var/www/html/ccat/font/simsun.ttc
2.设置相对路径,取决于这个脚本和/font/simsun.ttc字体的相对位置
假设脚本gd.php在/var/www/html/ccat/gd.php就可以
ImageTTFText ($im, 12, 0, 140, 30, $black, "./font/simsun.ttc", $stri);
明白,还有一个问题是,我写好的一个png图片,打印的时候没有动态部分。
代码如下:
$stri=iconv("GB2312","UTF-8","姓名:__________________");
ImageTTFText ($im, 12, 0, 80, 30, $black, "d://www/font/simsun.ttc", $stri);
$stri=iconv("GB2312","UTF-8",$name1);
ImageTTFText ($im, 12, 0, 140, 30, $black, "d://www/font/simsun.ttc", $stri);
在ie下,显示出:
“姓名:____123________”
用打印机打印,只能打印出
姓名:__________________
动态的“123”没有!划线语句也是这样的。不知道为什么
换成firefox却可以打印出来! 很有可能$name1和"Name:_____________"重叠在一起了
<?php
// Set the content-type
header("Content-type: image/png");
// Create the image
$im = imagecreatetruecolor(400, 30);
// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
// Replace path by your own font path
$font = 'arial.ttf';
// Add some shadow to the text
$stri=iconv("GB2312", "UTF-8", "Name:_____________");
imagettftext($im, 20, 0, 11, 21, $grey, $font, $stri);
$name1 = " " . "123" . " ";
// Add the text
unset($stri);
$stri=iconv("GB2312", "UTF-8", $name1);
imagettftext($im, 20, 0, 11, 21, $grey, $font, $stri);
// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);
?>
不是这个问题,我用ie看到了。明明看到的东西,却打不出来,奇怪。
在firefox下,也可以看到,就能打印,但是保存的时候,保存的也只有。
"Name:_____________"也没有“123”
这个结构是这样的,用一个html文件来录入数据,然后用一个php来画出图形。
凡是从html得到的数据,都能用浏览器看到,都打印不出来。 HTML仅仅是表现层呀,怪怪di
ccat你用我的代码试试看,看看能不能打印 :?:
页:
[1]