У меня есть генератор PDF на основе библиотеки fpdf. Там я добавляю несколько PNG, и некоторые из них имеют альфа-канал. По умолчанию все выглядит хорошо, вот два изображения друг над другом, а изогнутое имеет альфа-канал:
Я много читал о создании файлов PDF, и я думаю, что мне нужно создавать новые объекты, как это
26 0 obj
<</AIS false/BM/Multiply/CA 1.0/OP false/OPM 1/SA
true/SMask/None/Type/ExtGState/ca 1.0/op false>>
endobj
а затем использовать их как-нибудь. Я также нашел это расширение http://fpdf.de/downloads/add-ons/transparency.html но там я могу установить прозрачность только для всего документа. Мне кажется, что нет способа справиться с этим с помощью fpdf?
Мне нужен какой-то фрагмент кода, чтобы применить режим наложения «умножение» ко всем изображениям с прозрачностью. Есть идеи?
Мой код прост, я только включаю FPDF и затем рисую изображения:
$this->pdf = new FPDI(
$orientation,'mm',
[$template->getWidth(),$template->getHeight()]
);
$this->pdf->Image(
$resizedImage->png(),
$item->getPosX()+$item->getTemplate()->getTrimBoxMargins(),
$item->getPosY()+$item->getTemplate()->getTrimBoxMargins(),
$item->getWidth(),
$item->getHeight()
);
Спасибо!
Задача ещё не решена.
Других решений пока нет …