• Модуль: 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;
}