created_date: 02.07.2016
last_update_date: 02.07.2016
author: @yugoslavskiy
- How to Make an HTML Signature in Apple Mail for El Capitan OS X 10.11 или giantuser_signature.html
- Generate mail signature
- How to Create an Attactive HTML Email Signature For Mail on Mac OS X El Capitan 10.11
- base64 encoded images in email signatures
- Красивые шаблоны
Все просто. Apple Mail некорректно обрабатывает скопированные в него из Outlook подписи (в моем случае - изображение логотипа никак не умещалось слева от текста, таблица ни в какую не хотела отображаться).
Собственно, пара пачек выкуренных манов, и вот ты уже читаешь этот гайд.
Сперва-наперво, посредством Apple Mail, нагенерим под необходимой учеткой 4 подписи (ну или сколько тебе надо):
- ru_new
- ru_reply
- eng_new
- eng_reply
UDP: если в подписи нужны картинки - при создании копируй в нее необходимую картинку
-
iCloud Drive
~/Library/Mobile\ Documents/com~apple~mail/Data/V3/MailData/Signatures/
-
Local
~/Library/Mail/V3/MailData/Signatures/ or ~/Library/Mobile\ Documents/com~apple~mail/Data/V3/MailData/Signatures/
Возьми изображение (вероятно, лого, которое больше всего нравится по качеству), но без фанатизма, не сильно тяжелое. Его необходимо особым образом объявить перед тем как внедрять в код:
--boundary
Content-Type: image/png; name="sig.png"
Content-Disposition: inline; filename="sig.png"
Content-Transfer-Encoding: base64
Content-ID: <0123456789>
Content-Location: sig.png
base64 data
--boundary
И только после этого, на него можно ссылаться следующим образом в html:
<img src="cid:0123456789">
UDP: если при создании подписи ты скопировал нужную картинку - ничего не трогай, читай дальше
Картинки отчаянно не хотят жениться с формой подписи из предыдущей главы. Необходимо еще малямс плясануть с бубном. Рабочий алгоритм:
-
Создаешь подпись способом виндузятника - копи пейст (вместе с изображением) - Mail сгенерит id подписи, и все внутренние теги/ссылки.
-
Редактируешь эту подпись, вставляя свое body, но сохраняя
boundary
, сгенерированные Mail. Выглядит оно (boundary
) следующим образом:
--Apple-Mail=_B9098869-CD71-4DD8-8E02-28D98C7B8DB0
Без этого не заработает.
- Делаешь ссылку на картинку таким же способом, как это сделал Mail автоматически:
<span class=3D"Apple-string-attachment"><object height=3D64 width=3D139 type=3Dapplication/x-apple-msg-attachment data=3D"cid:[email protected]"></object></span>
Само собой, cid рисунка тоже берешь тот, который был сгенерен Mail'ом автоматически.
- Взлетело.
Когда все cid
/boundary
и прочее создалось, ты можешь захотеть сменить изображение "на лету", то есть не повторяя все с самого начала. Соответственно, все что для этого нужно - заменить base64-кодированную картинку. Ссылка на нее останется активной, никакой проверки целостности нет. Делаем следующее:
base64 <твое_новое_изображение> | sed -r 's/(.{76})/\1\n/g'
И копируешь полученный base64 код на место предыдущего. Профит. (не забудь залочить файл)
Нужно залочить файл, ибо Mail его перепишет:
chflags uchg ~/Library/Mail/V3/MailData/Signatures/*.mailsignature # обрати внимание - этой командой ты залочишь ВСЕ файлы
Ну и разлочить, если надо:
chflags nouchg ~/Library/Mail/V3/MailData/Signatures/*.mailsignature
Message-Id: <07025295-CD39-49E4-9A74-404F58675B7F>
Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\))
Content-Type: multipart/related;
type="text/html";
boundary="Apple-Mail=_B9098869-CD71-4DD8-8E02-28D98C7B8DB0"
--Apple-Mail=_B9098869-CD71-4DD8-8E02-28D98C7B8DB0
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
charset=utf-8
<body>
<br />
<style type='text/css'>
a.link{margin:0;padding:0;border:none !important;text-decoration:none !important;}
table,tr,td,a,span{font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;}
</style>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' />
<table id="sig" width='320' cellspacing='0' cellpadding='0' border-spacing='0' style="width:320px;margin:0;padding:0;">
<div style="position:relative;display:inline-block;">
<table>
<tr>
<br/> <span style="font-size:12px;color: rgb(0, 32, 96);"> С уважением, </span>
<br/>
<br/>
<br/>
<tr>
<td valign='top' width="178" style="width:178px;margin:0;padding:0;vertical-align:top;">
<span class=3D"Apple-string-attachment"><object height=3D64 width=3D139 type=3Dapplication/x-apple-msg-attachment data=3D"cid:[email protected]"></object></span>
</td>
<td style="padding-left:15px;">
<p style="line-height:14px;">
<span style="font-size:13px;color: rgb(0, 32, 96);"><b> ФИО </b></span>
<br/> <span style="font-size:12px;color: rgb(0, 32, 96);"> Департамент </span>
<br/> <span style="font-size:12px;color: rgb(0, 32, 96);"> Должность </span>
<br/>
<br/> <span style="font-size:13px;color: rgb(0, 32, 96);"><b> Компания </b></span>
<br/> <span style="font-size:12px;color: rgb(0, 32, 96);"> Адрес </span>
<br/> <span style="font-size:12px;color: rgb(0, 32, 96);"> Адрес </span>
<br/> <span style="font-size:12px;color: rgb(0, 32, 96);"> Тел.:    +x (xxx) xxx xxxx (доб. xxxx) </span>
<br/> <span style="font-size:12px;color: rgb(0, 32, 96);"> Моб.:   +x (xxx) xxx xxxx </span>
<br/> <span style="font-size:12px;color: rgb(0, 32, 96);"> Факс:    +x (xxx) xxx xxxx </span>
<br/> <span style="font-size:12px;color: rgb(0, 32, 96);"> E-mail: <a href="mailto:[email protected]">[email protected]</a> </span>
<br/> <span style="font-size:12px;color: rgb(0, 32, 96);"> <a href="http://www.xxxx.xx/">www.xxxxx.xx</a> </span>
</p>
</td>
</tr>
</table>
</div>
</table>
</td>
</tr>
</table>
</body>
--Apple-Mail=_B9098869-CD71-4DD8-8E02-28D98C7B8DB0
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename=image002.jpg
Content-Type: image/jpeg;
name="image002.jpg"
Content-Id: <image002[email protected]>
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
KUoFKUoFKUoFKUoFKUoP/9k=
--Apple-Mail=_B9098869-CD71-4DD8-8E02-28D98C7B8DB0--