Я пытаюсь создать изображение диаграммы, которую я использую, чтобы я мог вставить ее в PDF.Я использую chart.js
для создания диаграммы - хотя я использую https://quickchart.io/ для создания диаграммы, передавая информацию о диаграмме в quickchart url
.
Затем я пытаюсьдобавьте его в pdf, используя tcpdf
.
. Строка, которую я создаю из некоторых массивов:
$genderGraph = "https://quickchart.io/chart?c={type: 'doughnut',data:{labels:" . json_encode($genderchartjs['label']) . ", datasets: [{data:" . json_encode($genderchartjs['data']) . ",backgroundColor:" . json_encode($chartcolors) . "}]}}";
И если я повторяю, что $genderGraph
следует приведенному выше:
https://quickchart.io/chart?c={type: 'doughnut',data:{labels:["Male","Female","Unknown"], datasets: [{data:[16,34,17],backgroundColor:["rgba(255, 99, 132, 1)","rgba(54, 162, 235, 1)","rgba(255, 206, 86, 1)","rgba(75, 192, 192, 1)","rgba(153, 102, 255, 1)","rgba(255, 159, 64, 1)","rgba(0, 0, 0, 1)"]}]}}
Который, если вы вставите в адресную строку браузера, покажет вам правильное изображение диаграммы, в точности так, как я этого хочу.
Проблема заключается в том, когда я пытаюсь добавить изображениев PDF, используя file_get_contents()
$img = file_get_contents($genderGraph);
$pdf->Image('@' . $img);
Я получаю следующее предупреждение:
Предупреждение (2): file_get_contents (https://quickchart.io/chart?c={type: «пончик», данные:{label: ["Male", "Female", "Unknown"], наборы данных: [{data: [16,34,17], backgroundColor: ["rgba (255, 99, 132, 1)", "rgba (54, 162, 235, 1) "," rgba (255, 206, 86, 1) "," rgba (75, 192, 192, 1) "," rgba (153, 102, 255, 1) ","rgba (255, 159, 64, 1) "," rgba (0, 0, 0, 1) "]}]}}): не удалось открыть поток: ошибка HTTP-запроса!HTTP / 1.1 400 Bad Request
Похоже, что проблема с форматированием URL, что мне нужно сделать, чтобы это исправить?