* Use of this software is governed by the Business Source License included in the LICENSE file and at https://getparthenon.com/docs/next/license.
9
*
10
* Change Date: TBD ( 3 years after 2.0.0 release )
11
*
12
* On the date above, in accordance with the Business Source License, use of this software will be governed by the open source license specified in the LICENSE file.
13
*/
14
15
namespace Parthenon\Common\Pdf;
16
17
use Knp\Snappy\Pdf;
18
use Parthenon\Common\Exception\GeneralException;
19
20
class SnappyGenerator implements GeneratorInterface
21
{
22
private Pdf $pdf;
23
24
public function __construct(string $bin)
25
{
26
$this->pdf = new Pdf($bin);
27
}
28
29
public function generate(string $html)
30
{
31
try {
32
return $this->pdf->getOutputFromHtml($html);
33
} catch (\Exception $e) {
34
throw new GeneralException($e->getMessage(), $e->getCode(), $e);