我制作了一个具有特定字体(handwriting.ttf)的应用程序,它在应用程序中工作得非常好,但是当我通过我的应用程序通过电子邮件发送以这种字体编写的文本时 - 字体在接收器端变得乱码(原因是接收器没有在他的电脑中有这个特殊的字体)
我见过另一个使用自定义字体通过电子邮件发送文本的应用程序。这让我相信像这样的功能是有效的——但我不知道怎么做?
我制作了一个具有特定字体(handwriting.ttf)的应用程序,它在应用程序中工作得非常好,但是当我通过我的应用程序通过电子邮件发送以这种字体编写的文本时 - 字体在接收器端变得乱码(原因是接收器没有在他的电脑中有这个特殊的字体)
我见过另一个使用自定义字体通过电子邮件发送文本的应用程序。这让我相信像这样的功能是有效的——但我不知道怎么做?
当你说胡言乱语时,你的意思是用户正在查看副本,但是对齐和其他图形元素被搞砸了,或者你真的看到了一些完全无法理解的东西。我本来希望您的字体标签具有一系列字体,并且如果尝试使用自定义字体失败,电子邮件将退回到更标准的字体之一。请使用 (a) 您用于创建电子邮件正文的代码以及 (b) 它在电子邮件客户端中呈现方式的屏幕快照更新您的原始问题。
两个直接的建议:
如果您知道其他使用自定义字体发送电子邮件的应用程序(我对此感到惊讶,但我会相信您的话),让其中一个应用程序向您发送电子邮件,然后查看该电子邮件的来源并查看它在电子邮件 html 中的内容并检查它是如何做到的;
我收到的大多数使用专用字体的电子邮件也包含各种图形元素,并且将电子邮件作为图像发送(您可以使用 base64 将其嵌入到基于 html 的电子邮件中,或者放在一些服务器上并链接到 <img> 那里),也经常带有文本再现。您可以使用Quartz 2D创建这些图像,然后嵌入到您的电子邮件中。显然,这并不适用于所有情况,但使用图像作为电子邮件正文或 PDF(您也可以从应用程序生成)作为附件似乎更常见。
就个人而言,我会回避在电子邮件的 html 正文中嵌入自定义字体,因为您会受制于用户的电子邮件客户端如何呈现自定义字体(如果有的话)的变幻莫测。另外,您需要进行一些详尽的测试,检查不同电子邮件客户端中的电子邮件(正如@meccan 的评论链接所做的那样)。如果生成的电子邮件的外观和感觉是关键且高度风格化的,并且如果电子邮件的内容相对较短,我会倾向于选项 2。