Для создания PDF файла в Битриксе и сохранения его в свойство типа "Файл" элемента, можно использовать библиотеку Dompdf, которая позволяет генерировать PDF файлы из HTML кода.
Вот пример кода, который можно использовать для этой задачи:
```php
$articleTitle = $arResult['NAME']; // название статьи
$articleImg = base64_encode(file_get_contents($arResult['DETAIL_PICTURE']['SRC'])); // картинка
$articleText = $arResult['DETAIL_TEXT']; // текст статьи
$articleID = $arResult['ID']; // ID статьи-элемента
$articleToPdf = '<html lang="ru"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><body>
<style type="text/css">
* {box-sizing: border-box; margin: 0; padding: 0;}
body {font-family: DejaVu Sans;}
h1 {font-size: 25px; text-align: center;}
img {margin: 0px 20px; max-width: 100%;}
p {font-size: 15px; line-height: 23px;}
</style>
<body>'.
'<h1>' . $articleTitle . '</h1>'.
'<img src="data:image/png;base64,' . $articleImg . '" alt="Article Image">'.
'<p>'. $articleText . '</p>'.
'</body></html>';
require_once $_SERVER['DOCUMENT_ROOT'].'/f/dompdf/autoload.inc.php';
use Dompdf\Dompdf;
$dompdf = new Dompdf();
$dompdf->loadHtml($articleToPdf);
$dompdf->setPaper('a4', 'portrait');
$dompdf->render();
$output = $dompdf->output();
$el = new CIBlockElement;
$PROP = array();
$filename = $articleTitle . '.pdf';
$file = CFile::MakeFileArray($output);
$file['MODULE_ID'] = 'iblock';
$fileID = CFile::SaveFile($file, 'iblock');
if ($fileID) {
$PROP['ATT_PDF_FILE'] = $fileID;
$arUpdateArticle = Array("PROPERTY_VALUES" => $PROP);
$res = $el->Update($articleID, $arUpdateArticle);
}
```
Перед обновлением статьи, мы сохраняем созданный PDF файл в каталог по умолчанию, используя `CFile::SaveFile()`. Затем мы получаем ID сохраненного файла и сохраняем его в свойство `ATT_PDF_FILE`.
Пожалуйста, обратите внимание, что вам необходимо создать папку `/f/dompdf` на вашем сервере и загрузить в нее составляющие пакета Dompdf.