Практична проблема полягає в пошуку балансу між хорошим досвідом співпрацюючої сторони, що приймає, але не повністю порушеною для неучасних сторін. Пам’ятайте, що електронні листи можуть зберігатися протягом багатьох років, читатись за допомогою декількох програм та пересилати іншим людям.
В даний час я вважаю, що TeX для Gmail робить це найкраще - особливо це дозволяє виводити звичайні текстові формули на кшталт $2^n$
або навіть (евристично) 2^n
у вхідну пошту, що чудово підходить вперед та назад з людиною, яка користується іншим програмним забезпеченням.
Оцінка тут не настільки гнучка з математики, але також робить і інші форматування розмітки і працює в багатьох інших місцях.
Ця форма на сайті IntMath Мюррея Борна вимагає, щоб ви надсилали з неї замість свого звичайного поштового клієнта і використовував ASCIIMathML замість позначення TeX (простіше, але має приємну особливість дозволяти одержувачу переглядати пошту у браузері - і відповідати там.
На технічному рівні єдиним способом відображення широкого спектру формул для будь-якого клієнта (крім чистотекстових) є зображення PNG. Як правильно робити, слід включати:
alt
запасний текст
- вбудовування зображення в пошту, щоб воно було самостійним і не залежало від зовнішніх серверів. URI даних мають погану підтримку, багаточастинні з
cid:
набагато кращою (див. коментарі там).
- використовуючи зображення високої роздільної здатності, які не виглядають жахливо на екрані з високою роздільною здатністю.
- встановлення висоти, ширини та вертикальної вирівнювання в
ex
одиницях. Це має бути в змозі відповідати розміром та базовою лінією до навколишнього тексту.
Налаштувати все вищезазначене на роботі серед клієнтів є складним ... Наприклад, див . Проблеми "Markdown Here" .
Існує кілька кращих способів відображення математики, ніж PNG. Проблема з усіма ними полягає в тому, як повернутися до зображення (або навіть тексту), коли вони не працюють?
Деякі прості підмножини математики можна добре відтворити за допомогою unicode + HTML + CSS. Дійсно, у TeX для Gmail є такий режим. KaTeX підняв планку для високоякісного чистого відображення CSS, за винятком того, що він покладається на веб-шрифти, які не працюють майже в поштовому клієнті. У MathJax 2.5 є режим "CommonHTML", в якому зараз використовується CSS + HTML без навіть веб-шрифтів, але це виглядає некрасиво (вони планують почати використовувати веб-шрифти, щоб зробити гарнішими) ...
У будь-якому випадку, CSS у клієнтах електронної пошти значно відстає від браузерів і жахливо нерівних , тому складні математичні макети не працюватимуть.
MathML - це чудова і семантично правильна річ і навіть працює в деяких клієнтах; на жаль, резервне копіювання зображень здається важким. З офіційних механізмів резервного копіювання навіть Chrome отримав лише половину 2014 року (дякую Фред Уанд), тож що можна очікувати від клієнтів електронної пошти?
OK MathML - це складний і нішевий формат, але, безумовно, SVG повинен бути непродуманим після ~ 15 років існування? На жаль, підтримка SVG по електронній пошті дуже сумна (наприклад, нещодавно в Gmail не впала вся підтримка, навіть не вкладений текст), а відомі методи резервного завантаження без JavaScript не працюють на електронній пошті. (Я не вважаю тестування на роздільну здатність екрана == iPhone | iPad прийнятною технікою ...)
Найчистіші методи резервного копіювання покладаються на те, щоб клієнти ігнорували теги, яких вони не розуміють; На жаль, декілька (веб) поштових клієнтів приймають лише білий список тегів і повністю відкидають такі речі, як <math>...<img .../>...</math>
замість того, щоб рендерінг img
...
Що стосується того, щоб робити це без резервного копіювання, тож одержувач не може читати математику взагалі без потрібного інструменту - це жорсткий дзвінок (порівняно з PNG, який більш химерний, але працює), але, можливо, прийнятний для вас.
[Насправді завжди є можливість включити текст / простий запас. Не всі клієнти, які отримують це, відкривають це, і починати пошту з "Не можете бачити математику? Шукати" Показати оригінал "у своєму клієнті електронної пошти" було б
химерним досвідом ... Однак, що робить система IntMath "натисніть тут, щоб прочитати ( і відповісти ) як веб-сторінка "дуже добре.]