php gd imagesetpixel,像素与像素和图像内部模型不是1对1的关系
<?
$img_w = 800;
$img_h = 600;
$img = imagecreate($img_w, $img_h);
$color = imagecolorallocate($img, 230, 230, 230);
$imgname = "gd_img.png";
for($n=0; $n < $img_w; $n++)
{
plot($n , $img_h/2, imagecolorallocate($img, 200, 0, 0));
plot($n+4 , $img_h/2 + 10, imagecolorallocate($img, 0, 200, 0));
plot($n*2 , $img_h/2 + 20, imagecolorallocate($img, 0, 0, 200));
}
imagepng($img, $imgname, $color);
imagedestroy($img);
function plot($x, $y, $color=0)
{
imagesetpixel($GLOBALS['img'], $x, $y, $color);
}
?>
尝试一下,你会发现应该有一条 800 像素宽的实线。至少在我看来没有。 FireFox WebDeveloper 插件(杂项->显示标尺下的标尺工具)显示顶线,宽度约为 83 像素。
<?
$img_w = 800;
$img_h = 600;
$img = imagecreate($img_w, $img_h);
$color = imagecolorallocate($img, 230, 230, 230);
$imgname = "gd_img.png";
for($n=0; $n < $img_w; $n++)
{
plot($n , $img_h/2, imagecolorallocate($img, 200, 0, 0));
plot($n+4 , $img_h/2 + 10, imagecolorallocate($img, 0, 200, 0));
plot($n*2 , $img_h/2 + 20, imagecolorallocate($img, 0, 0, 200));
}
imagepng($img, $imgname, $color);
imagedestroy($img);
function plot($x, $y, $color=0)
{
imagesetpixel($GLOBALS['img'], $x, $y, $color);
}
?>
Try it, youll see that there should be a solid line 800 pixels wide. There is not, at least on my end. The FireFox WebDeveloper addon (the ruler tool under misc->display ruler) shows the top line at about 83 pixels wide.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
根据插入图像的 HTML 代码,浏览器可以调整图像大小以适合页面元素。
Depending on your HTML code to insert the image, your browser could resize the image to fit the page elements.