• Модуль: documentgenerator
  • Путь к файлу: ~/bitrix/modules/documentgenerator/lib/body/docx.php
  • Класс: BitrixDocumentGeneratorBodyDocx
  • Вызов: Docx::importImage
protected function importImage(File $image, DOMElement $relationshipNode, string $newId = ''): void
{
	$mimeType = $this->getMimeType($image);
	$extension = $image->getExtension() ?: $this->getPrintableMimeTypes()[$mimeType] ?? '';
	$newName = Random::getString(15).'.'.$extension;
	$this->zip->addFile($image->getPhysicalPath(), 'word/media/'.$newName);
	$relationshipNode->removeAttribute('Target');
	$relationshipNode->setAttribute('Target', 'media/'.$newName);
	if(is_string($newId) && !empty($newId))
	{
		$relationshipNode->removeAttribute('Id');
		$relationshipNode->setAttribute('Id', $newId);
	}

	$this->addRecordToContentTypes([
		'path' => '/word/media/' . $newName,
		'type' => $mimeType,
	]);
}