我想添加一个徽标和其他图像到我的Amcharts pdf导出。版本: Ubuntu 16.04上的Php 7,Amcharts 4。
我一直在关注https://www.amcharts.com/docs/v4/tutorials/generating-multi-content-pdf-export/
我有标题,文本图表和表格。这个例子没有包含图片,但我在这里查看了PDFmake:https://pdfmake.github.io/docs/document-definition-object/images/
在amCharts中,表格等使用如下的块:
doc.content.push({
table: {在PDFMake中,语法是:
var docDefinition = {
content: [
{
layout: 'lightHorizontalLines', // optional
table: {对于图像:
var dd = {
content: [
'pdfmake (since it\'s based on pdfkit) supports JPEG and PNG format',
'If no width/height/fit is provided, image original size will be used',
{
image: 'sampleImage.jpg',
},所以我试着:
doc.content.push({
image: 'sampleImage.jpg',
}); 并将服务器上名为sampleImage.jpg的图像放在与php文件相同的文件夹中。
我希望图像能添加到我的report.pdf下载中,但它不起作用。任何想法都很感谢。具体地说,什么是正确的语法,我应该把图像放在哪里?我希望避免将图像转换为: data: image /jpeg格式的麻烦。
发布于 2019-03-31 19:32:51
回答我自己的问题:
因此,看起来您必须使用"data: image /jpeg;base64“格式才能在脚本中包含图像。我用"https://www.base64-image.de/“转换了我的图片。结果是一段代码,如下所示:
data:image/jpeg;base64,/9j/4A... lots of data ... QhCABCEIA//2Q==将其复制到js变量中,如下所示:
smiley = 'data:image/jpeg;base64,/9j/4A... lots of data ... QhCABCEIA//2Q==';然后将其输出为:
doc.content.push({
image: smiley,
width: 30
});为了将图像放入表中,我这样做了:
doc.content.push({
table: {
headerRows: 1,
widths: [ "*", "*", "*", "*","*", "*", "*","*", "*", "*" ],
body: [
[
{image: low, width: 30, colSpan: 3, alignment: 'center'},{ },{ },
{image: ok, width: 30, colSpan: 4, alignment: 'center'},{ },{ },{ },
{image: high, width: 30, colSpan: 3, alignment: 'center'},{ },{ }
],
[
{text: "<?php echo $final_score_show[1]; ?>", alignment: 'center'},
...
]
]
}
});希望这对某些人有帮助。享受吧!
https://stackoverflow.com/questions/55419206
复制相似问题