【问题标题】:PHP render html code to imagePHP 将 html 代码渲染为图像
【发布时间】:2015-03-15 23:03:03
【问题描述】:

render.php

$form = '<b>Hi</b><br /><img src="test.jpg" /><br />New File';

echo $form;
header("Content-Type: image/png");
imagejpeg($form);

但是这段代码不起作用

我希望这个页面渲染到 img 文件:

<img src="render.php" />

【问题讨论】:

  • 从您的 render.php 中删除最后 2 行。看看有没有帮助。
  • imagejpeg() 从给定的图像创建一个 JPEG 文件。
  • @GauravDave ,未加载!

标签: php image render


【解决方案1】:

您正在尝试同时输出 HTML 和图像数据 - 这没有任何意义。 相反,您应该将 HTML-img-tag 放入您的网站,src-attribute 是 render.php,它通过 header() 设置标题并直接输出图像数据 - 无需任何额外的 HTML。

https://stackoverflow.com/a/1851856/351861

【讨论】:

  • 谢谢,你能提供更多帮助吗?
  • 没有什么可以帮助您的了,您现在有一个完整的解决方案来解决您的问题。如果您有更多问题,您应该创建另一个问题。
  • Thx ,但这个答案有 $file : $file = '../image.jpg'; .我的代码没有 image.jpg
【解决方案2】:

您应该为图片使用额外的 php 文件,例如:

<img src="render.php?id=15" />

因为如果您的 php 脚本只返回一张图片,则说明使用错误。所以你通过它显示什么图像。 render.php 可能类似于

$pic_id = (int)$_GET['id'];// cast to int because only numbers are allowed here
$pic_path = 'assets/img/';
$f = $pic_path.$pic_id.".jpg";// it's just an example so it's simplyfied
header("Content-Type: image/png");
imagejpeg($form);

这里的重点是你可以检查用户的权限,非常灵活地查看图片并记录一些关于下载器的数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-30
    • 1970-01-01
    • 1970-01-01
    • 2018-06-16
    • 1970-01-01
    相关资源
    最近更新 更多