你好,我有一个问题,让我有点难倒!
我正在尝试在joomla组件内实现图像流。Image文件夹由虚拟主机以外的服务器上的许多站点共享,因此不能从站点直接访问。
我试了下面的方法,效果很好:
testfile.php
<img src="testImgGen.php" />
testImgGen.php
?php
$im = imagecreatefrompng("c:xampp/htdocs/docs/images/282/Img1.png");
header('Content-Type: image/png');
imagepng($im);
imagedestroy($im);
exit;
?>
so尝试在Joomla组件内实现:SRC link inside view:
"<img src='?option=com_cat&view=item&task=prevIMG&tmpl=Component&fid=282&file=Img1.png' />"
在控制器内部:
function prevIMG(){
require_once(JPATH_COMPONENT.DS.'models'.DS.'details.php');
$model=new CatModelCat_details ;
$model->prevImg();
}
模型内部:
function prevImg(){
$doc =& JFactory::getDocument();
$doc->setMimeEncoding('image/png');
$img = "C:xampp/htdocs/docs/images/".$_GET[fid]."/".$_GET[file];
$im = imagecreatefrompng($img);
imagepng($im);
imagedestroy($im);
}
返回…没有什么我试过readfile()/get_contents_fromfile()我已经创建了通过没有标题的空白模板,并使用了"header('Content-Type: image/png');"我要开始用头撞桌子了!
如果有人有什么建议,我很乐意听听!
我偶尔有一个字符串的图像输出!或者我得到"解释为文档与mime类型图像"或"解释为图像与mime类型test/html"
欢呼Kiran
您需要为组件请求使用"raw"参数。快速的谷歌搜索找到了这个教程。http://blog.joomlatools.eu/2008/01/joomla-15-generating-raw-ouput.html
您应该确保代码中没有错误。如果出现错误,并且PHP -error-reporting打开,那么PHP可能会在png输出中添加错误文本的前缀。在这种情况下,浏览器将其视为文本文件而不是图像文件。