Конвертировать URI данных изображения в PHP изображения

1

У меня есть переменная uri данных в php

$imageURL  = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAgAElEQ…ACIiACIiAC5U1AAqS891erEwEREAEREAEREAEREIFAEfj/bfXX..."

Я пытаюсь вставить это в pdf, используя fpdf, для которого мне нужно преобразовать это в изображение, которое я предполагаю. Я попытался сделать что-то вроде

base64_decode($imageURL);

но это не сработает. Как успешно вставить эти данные uri в pdf.

Теги:
base64
image
fpdf
data-uri

1 ответ

1
Лучший ответ
$image_content = base64_decode(str_replace("data:image/png;base64,","",$imageURL)); // remove "data:image/png;base64,"
$tempfile = tmpfile(); // create temporary file
fwrite($tempfile, $image_content); // fill data to temporary file
$metaDatas = stream_get_meta_data($tempfile);
$tmpFilename = $metaDatas['uri'];

Теперь вы можете использовать это изображение в fpdf, например:

$pdf->Image($tmpFilename,null,null,0,0);

Или вы можете указать тип изображения, добавив параметр типа изображения следующим образом:

$pdf->Image($tmpFilename,null,null,0,0,'PNG');

Пожалуйста, посетите сайт http://www.fpdf.org/en/doc/image.htm

  • 0
    Ошибка FPDF: неподдерживаемый тип изображения: tmp
  • 0
    Временный файл PHP создает файл * .tmp. FPDF Изображение с использованием расширения файла для распознавания типа изображения, если это не указано в параметре fpdf.org/en/doc/image.htm. Итак, используйте так: $pdf->Image($tmpFilename,null,null,0,0,'PNG');
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню