composer package updates
[openemr.git] / vendor / knplabs / knp-snappy / src / Knp / Snappy / Image.php
blobe0814f6dfbfbb5c004c720241d7051309a073ea8
1 <?php
3 namespace Knp\Snappy;
5 /**
6 * Use this class to create a snapshot / thumbnail from a HTML page.
9 * @author Matthieu Bontemps <matthieu.bontemps@knplabs.com>
10 * @author Antoine Hérault <antoine.herault@knplabs.com>
12 class Image extends AbstractGenerator
14 /**
15 * {@inheritdoc}
17 public function __construct($binary = null, array $options = [], array $env = null)
19 $this->setDefaultExtension('jpg');
21 parent::__construct($binary, $options, $env);
24 /**
25 * {@inheritdoc}
27 protected function configure()
29 $this->addOptions([
30 'allow' => null, // Allow the file or files from the specified folder to be loaded (repeatable)
31 'cache-dir' => null, // Web cache directory
32 'checkbox-checked-svg' => null, // Use this SVG file when rendering checked checkboxes
33 'checked-svg' => null, // Use this SVG file when rendering unchecked checkboxes
34 'cookie' => [], // Set an additional cookie (repeatable)
35 'cookie-jar' => null, // Read and write cookies from and to the supplied cookie jar file
36 'crop-h' => null, // Set height for cropping
37 'crop-w' => null, // Set width for cropping
38 'crop-x' => null, // Set x coordinate for cropping (default 0)
39 'crop-y' => null, // Set y coordinate for cropping (default 0)
40 'custom-header' => [], // Set an additional HTTP header (repeatable)
41 'custom-header-propagation' => null, // Add HTTP headers specified by --custom-header for each resource request.
42 'no-custom-header-propagation' => null, // Do not add HTTP headers specified by --custom-header for each resource request.
43 'debug-javascript' => null, // Show javascript debugging output
44 'no-debug-javascript' => null, // Do not show javascript debugging output (default)
45 'encoding' => null, // Set the default text encoding, for input
46 'format' => $this->getDefaultExtension(), // Output format
47 'height' => null, // Set screen height (default is calculated from page content) (default 0)
48 'images' => null, // Do load or print images (default)
49 'no-images' => null, // Do not load or print images
50 'disable-javascript' => null, // Do not allow web pages to run javascript
51 'enable-javascript' => null, // Do allow web pages to run javascript (default)
52 'javascript-delay' => null, // Wait some milliseconds for javascript finish (default 200)
53 'load-error-handling' => null, // Specify how to handle pages that fail to load: abort, ignore or skip (default abort)
54 'load-media-error-handling' => null, // Specify how to handle media files that fail to load: abort, ignore or skip (default ignore)
55 'disable-local-file-access' => null, // Do not allowed conversion of a local file to read in other local files, unless explicitly allowed with allow
56 'enable-local-file-access' => null, // Allowed conversion of a local file to read in other local files. (default)
57 'minimum-font-size' => null, // Minimum font size
58 'password' => null, // HTTP Authentication password
59 'disable-plugins' => null, // Disable installed plugins (default)
60 'enable-plugins' => null, // Enable installed plugins (plugins will likely not work)
61 'post' => [], // Add an additional post field
62 'post-file' => [], // Post an additional file
63 'proxy' => null, // Use a proxy
64 'quality' => null, // Output image quality (between 0 and 100) (default 94)
65 'radiobutton-checked-svg' => null, // Use this SVG file when rendering checked radio-buttons
66 'radiobutton-svg' => null, // Use this SVG file when rendering unchecked radio-buttons
67 'run-script' => null, // Run this additional javascript after the page is done loading (repeatable)
68 'disable-smart-width' => null, // Use the specified width even if it is not large enough for the content
69 'enable-smart-width' => null, // Extend --width to fit unbreakable content (default)
70 'stop-slow-scripts' => null, // Stop slow running javascript
71 'no-stop-slow-scripts' => null, // Do not stop slow running javascript (default)
72 'transparent' => null, // Make the background transparent in pngs *
73 'use-xserver' => null, // Use the X server (some plugins and other stuff might not work without X11)
74 'user-style-sheet' => null, // Specify a user style sheet, to load with every page
75 'username' => null, // HTTP Authentication username
76 'width' => null, // Set screen width (default is 1024)
77 'window-status' => null, // Wait until window.status is equal to this string before rendering page
78 'zoom' => null, // Use this zoom factor (default 1)
79 'quiet' => null, // Be less verbose
80 ]);