Как вставить график JpGraph в PDF из FPDF.
Здравствуйте, я программирую окончательный проект моего выпуска, так что это очень важно для меня, в PHP, и я использую две библиотеки кода, одна — FPDF, а другая — JpGraph. Я хочу вставить график, сгенерированный JpGraph внутри PDF, сгенерированного FPDF.
Когда я использую HTML, это просто, мне нужно просто написать: <img src="mygraph.php">
И «mygraph.php» генерирует график и вставляет его в мою HTML-страницу.
Но чтобы вставить изображение в PDF-файл библиотеки FPDF, мне нужно использовать следующий код: $pdf->Image("image.jpg");
Поэтому я предположил, что для вставки графика в PDF-файл просто необходима следующая строка кода: $pdf->Image("mygraph.php");
Но когда я это делаю, php выводит следующую строку Error: FPDF error: Unsupported image type: php
Конечно, все должно быть динамично и должно рассчитываться в реальном времени.
Пожалуйста, помогите мне, как я могу сделать эту работу? Как я могу решить эту проблему?
Вы можете попробовать:
$pdf->Image(file_get_contents("http://yousite/mygraph.php"));
Убедитесь, что вы установили правильный header
на mygraph.php
чтобы соответствовать типу изображения MIME, т.е.
header('Content-type: image/jpeg');
Спасибо за внимание, Педро:
Я сделал то, что вы сказали, но теперь PHP печатает весь код mygraph.php
Я не очень хорошо знаю, как использовать эту строку кода header('Content-type: image/jpeg');
Поэтому я поместил его в файл mygraph.php, теперь файл выглядит следующим образом:
<?php
header('Content-type: image/jpeg');
require_once("graph/jpgraph.php");
require_once("graph/jpgraph_line.php");
$graph = new Graph(1300, 400);
$graph->SetScale("textlin");
$graph->SetShadow();
$graph->SetMargin(80,20,40,40);
$graph->title->Set("Tempo Medio das Consultas");
$graph->xaxis->title->Set('Meses');
$graph->yaxis->title->Set('Tempo Medio em Minutos');
$graph->yaxis->SetTitleMargin(45);
$lineplot->SetColor("orange");
$lineplot->SetWeight(3);
$graph->Stroke();`
?>
И строка кода, которая вызывает файл, выглядит следующим образом:
$pdf->Image(file_get_contents("mygraph.php"));
И php печатает следующее:
FPDF error: Unsupported image type: php"); $graph = new graph(1300, 400);
$graph->setscale("textlin"); $graph->setshadow();
$graph->setmargin(80,20,40,40); $graph->title->set("tempo medio das consultas"); $graph->xaxis->title->set('meses');
$graph->yaxis->title->set('tempo medio em minutos');
$graph->yaxis->settitlemargin(45); $lineplot->setcolor("orange");
$lineplot->setweight(3); $graph->stroke(); ?>