С помощью PHP можно генерировать файлы vcf, которые содержат в себе контактные данные, пригодные для Outlook. В данной статье кратко рассматривается вставка изображения (аватара) в такой файл.
<?php // Вставка аватара в vcard // $vCard - переменная, содержащая тело файла vcard $vCard = 'BEGIN:VCARD' . "\r\n"; $vCard .= 'VERSION:2.1' . "\r\n"; $image = "path_to_jpeg_image"; if (file_exists($image)) { $photo = base64_encode(file_get_contents($image)); // необходимо разделить строку на меньшие, по 72 символа, чтобы соответствовать стандарту $photo = wordwrap($photo, 72, "\r\n ", true); $vCard .= 'PHOTO;TYPE=JPEG;ENCODING=BASE64:' . "\r\n " . $photo . "\r\n\r\n"; // здесь нужна двойная «отбивка» } $vCard .= 'END:VCARD' . "\r\n"; ?>
Сгенерированный таким образом vcf будет содержать встроенное изображение, то есть файл можно переносить с компьютера на компьютер, не боясь, что оно не отобразится. Обратите внимание, в примере используется тип JPEG, однако могут быть использованы прочие типы изображений
Ссылки:
http://www.imc.org/pdi/vcard-21.txt - спецификация vCard