【发布时间】:2015-08-23 22:16:35
【问题描述】:
我有可以写文字的表格。我希望在图像上生成此文本。我有它并且它有效,我是using imagepng($im)。问题是我需要打印该图像,并有一个“打印”按钮。因为header('Content-Type: image/png') 我不能在我生成它的页面上使用html,所以我想使用ajax。这是我的实际代码,很少混合,我尝试了一些 base64 但从未使用过它,但我失败了。实际上,我的代码甚至没有显示错误(使用数据类型 json 显示)。我真的不知道该怎么做。哪里都没有找到。请帮助我不知道该怎么办;_;
代码:
<script type="text/javascript">
jQuery(function($) {
$(document).ready(function()
{
$( "#form_formularz" ).submit(function(e)
{
var data=JSON.stringify($('form').serialize())
e.preventDefault();
$.ajax({
type: 'post',
url: 'http://example.com/transfer_generator.php',
data: data,
error: function(a,b){console.log(a);console.log(b)},
success: function(cbdata){
console.log(data);
console.log(cbdata);
$('#form_image').html('<img src="data:image/png;base64,' + cbdata + '" />');
}
});
});
});
});
</script>
<div id="form_image">
</div>
编辑:
将“succes”更改为“success”并在 success: function(){ 中添加了cbdata
有'
// Set the content-type
header('Content-Type: image/png');
// Create the image
$im = ImageCreateFromPNG( "image.png" );
/* adding some text, everything okay */
imagepng($im);
我尝试添加 echo 'base64_encode(imagepng($im));'但没有为此工作。
【问题讨论】:
标签: javascript php ajax json printing