Blame view
dompdf/src/CanvasFactory.php
1.45 KB
670b6d6f8
![]() |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
<?php /** * @package dompdf * @link http://dompdf.github.com/ * @author Benj Carson <benjcarson@digitaljunkies.ca> * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License */ namespace Dompdf; /** * Create canvas instances * * The canvas factory creates canvas instances based on the * availability of rendering backends and config options. * * @package dompdf */ class CanvasFactory { /** * Constructor is private: this is a static class */ private function __construct() { } /** * @param Dompdf $dompdf * @param string|array $paper * @param string $orientation * @param string $class * * @return Canvas */ static function get_instance(Dompdf $dompdf, $paper = null, $orientation = null, $class = null) { $backend = strtolower($dompdf->get_option('pdf_backend')); if (isset($class) && class_exists($class, false)) { $class .= "_Adapter"; } else { if (($backend === "auto" || $backend === "pdflib") && class_exists("PDFLib", false) ) { $class = "Dompdf\\Adapter\\PDFLib"; } else { if ($backend === "gd") { $class = "Dompdf\\Adapter\\GD"; } else { $class = "Dompdf\\Adapter\\CPDF"; } } } return new $class($paper, $orientation, $dompdf); } } |