mirror of
https://github.com/Karaka-Management/Resources.git
synced 2026-01-11 21:38:39 +00:00
128 lines
2.2 KiB
PHP
Executable File
128 lines
2.2 KiB
PHP
Executable File
<?php
|
|
|
|
namespace Mpdf\Tag;
|
|
|
|
use Mpdf\Strict;
|
|
|
|
use Mpdf\Cache;
|
|
use Mpdf\Color\ColorConverter;
|
|
use Mpdf\CssManager;
|
|
use Mpdf\Form;
|
|
use Mpdf\Image\ImageProcessor;
|
|
use Mpdf\Language\LanguageToFontInterface;
|
|
use Mpdf\Mpdf;
|
|
use Mpdf\Otl;
|
|
use Mpdf\SizeConverter;
|
|
use Mpdf\TableOfContents;
|
|
|
|
abstract class Tag
|
|
{
|
|
|
|
use Strict;
|
|
|
|
/**
|
|
* @var \Mpdf\Mpdf
|
|
*/
|
|
protected $mpdf;
|
|
|
|
/**
|
|
* @var \Mpdf\Cache
|
|
*/
|
|
protected $cache;
|
|
|
|
/**
|
|
* @var \Mpdf\CssManager
|
|
*/
|
|
protected $cssManager;
|
|
|
|
/**
|
|
* @var \Mpdf\Form
|
|
*/
|
|
protected $form;
|
|
|
|
/**
|
|
* @var \Mpdf\Otl
|
|
*/
|
|
protected $otl;
|
|
|
|
/**
|
|
* @var \Mpdf\TableOfContents
|
|
*/
|
|
protected $tableOfContents;
|
|
|
|
/**
|
|
* @var \Mpdf\SizeConverter
|
|
*/
|
|
protected $sizeConverter;
|
|
|
|
/**
|
|
* @var \Mpdf\Color\ColorConverter
|
|
*/
|
|
protected $colorConverter;
|
|
|
|
/**
|
|
* @var \Mpdf\Image\ImageProcessor
|
|
*/
|
|
protected $imageProcessor;
|
|
|
|
/**
|
|
* @var \Mpdf\Language\LanguageToFontInterface
|
|
*/
|
|
protected $languageToFont;
|
|
|
|
const ALIGN = [
|
|
'left' => 'L',
|
|
'center' => 'C',
|
|
'right' => 'R',
|
|
'top' => 'T',
|
|
'text-top' => 'TT',
|
|
'middle' => 'M',
|
|
'baseline' => 'BS',
|
|
'bottom' => 'B',
|
|
'text-bottom' => 'TB',
|
|
'justify' => 'J'
|
|
];
|
|
|
|
public function __construct(
|
|
Mpdf $mpdf,
|
|
Cache $cache,
|
|
CssManager $cssManager,
|
|
Form $form,
|
|
Otl $otl,
|
|
TableOfContents $tableOfContents,
|
|
SizeConverter $sizeConverter,
|
|
ColorConverter $colorConverter,
|
|
ImageProcessor $imageProcessor,
|
|
LanguageToFontInterface $languageToFont
|
|
) {
|
|
|
|
$this->mpdf = $mpdf;
|
|
$this->cache = $cache;
|
|
$this->cssManager = $cssManager;
|
|
$this->form = $form;
|
|
$this->otl = $otl;
|
|
$this->tableOfContents = $tableOfContents;
|
|
$this->sizeConverter = $sizeConverter;
|
|
$this->colorConverter = $colorConverter;
|
|
$this->imageProcessor = $imageProcessor;
|
|
$this->languageToFont = $languageToFont;
|
|
}
|
|
|
|
public function getTagName()
|
|
{
|
|
$tag = get_class($this);
|
|
return strtoupper(str_replace('Mpdf\Tag\\', '', $tag));
|
|
}
|
|
|
|
protected function getAlign($property)
|
|
{
|
|
$property = strtolower($property);
|
|
return array_key_exists($property, self::ALIGN) ? self::ALIGN[$property] : '';
|
|
}
|
|
|
|
abstract public function open($attr, &$ahtml, &$ihtml);
|
|
|
|
abstract public function close(&$ahtml, &$ihtml);
|
|
|
|
}
|