- Модуль: mobile
- Путь к файлу: ~/bitrix/modules/mobile/lib/UI/File.php
- Класс: BitrixMobileUIFile
- Вызов: File::getPreview
public function getPreview(int $width, int $height): ?self
{
if (!CFile::IsImage($this->getUrl()))
{
return null;
}
if (
$this->preview
&& $this->preview->getWidth() === $width
&& $this->preview->getHeight() === $height
)
{
return $this->preview;
}
$resizedImage = CFile::ResizeImageGet(
$this->getId(),
[
'width' => $width,
'height' => $height,
],
BX_RESIZE_IMAGE_EXACT,
true,
false,
true
);
if ($resizedImage)
{
$resizedInfo = CFile::MakeFileArray($resizedImage['src']);
$this->preview = new self(
null,
$resizedInfo['name'],
$resizedInfo['type'],
$resizedImage['src'],
$resizedImage['width'],
$resizedImage['height'],
);
}
else
{
$this->preview = null;
}
return $this->preview;
}