public function addExif($tagName, $value)
    {
        if (empty($tagName)) {
            throw new \InvalidArgumentException('Tag name required');
        }

        if ('' === (string) $value) {
            throw new \InvalidArgumentException('Non-empty value required');
        }

        if (!isset($this->valueArguments['exif']) || !is_array($this->valueArguments['exif'])) {
            $this->valueArguments['exif'] = [];
        }

        if (count($this->valueArguments['exif']) == 32) {
            throw new \OverflowException('Maximum of 32 EXIF tag entries allowed');
        }

        $this->valueArguments['exif'][] = $tagName . '=' . (string) $value;

        return $this;
    }