Completed
Push — master ( ea43a1...cefa14 )
by Daniel
05:36
created

PdfWrite::getCompatibilityLevel()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 4
rs 10
cc 1
eloc 2
nc 1
nop 0
1
<?php
2
/**
3
 * This file is part of the Ghostscript package
4
 *
5
 * @author Daniel Schr�der <[email protected]>
6
 */
7
8
namespace GravityMedia\Ghostscript\Devices;
9
10
use GravityMedia\Ghostscript\Process\Arguments as ProcessArguments;
11
use Symfony\Component\Process\ProcessBuilder;
12
13
/**
14
 * The PDF write device class
15
 *
16
 * @package GravityMedia\Ghostscript\Devices
17
 */
18
class PdfWrite extends AbstractDevice
19
{
20
    /**
21
     * User distiller parameters
22
     */
23
    use DistillerParametersTrait;
24
25
    /**
26
     * The default compatibility level
27
     */
28
    const DEFAULT_COMPATIBILITY_LEVEL = '1.4';
29
30
    /**
31
     * Create PDF write device object
32
     *
33
     * @param ProcessBuilder   $builder
34
     * @param ProcessArguments $arguments
35
     */
36 3
    public function __construct(ProcessBuilder $builder, ProcessArguments $arguments)
37
    {
38 3
        parent::__construct($builder, $arguments->setArgument('-sDEVICE=pdfwrite'));
39
40 3
        $this->setCompatibilityLevel(self::DEFAULT_COMPATIBILITY_LEVEL);
41 3
    }
42
43
    /**
44
     * Get output file
45
     *
46
     * @return null|string
47
     */
48
    public function getOutputFile()
49
    {
50
        return $this->getArgumentValue('-sOutputFile');
51
    }
52
53
    /**
54
     * Set output file
55
     *
56
     * @param string $outputFile
57
     *
58
     * @return $this
59
     */
60
    public function setOutputFile($outputFile)
61
    {
62
        $this->setArgument('-sOutputFile=' . $outputFile);
63
64
        return $this;
65
    }
66
}
67