public function generatePdfPreview(string $pdfPath, string $imagePath, array $options = [])
    {
        if (!isset($options['absolutePdfPath']) || true !== $options['absolutePdfPath']) {
            $pdfPath = $this->webDir.'/'.$pdfPath;
        }

        if (!isset($options['absoluteImagePath']) || true !== $options['absoluteImagePath']) {
            $imagePath = $this->webDir.'/'.$imagePath;
        }
        $pdfTranscoder = isset($options['pdfTranscoder']) ? $options['pdfTranscoder'] : '';

        switch ($pdfTranscoder) {
            case 'alchemy':
                return $this->alchemyPdf($pdfPath, $imagePath, $options);

            case 'spatie':
            default:
                return $this->spatiePdf($pdfPath, $imagePath, $options);
        }
    }