我正在尝试根据电子表格中的值建立HTML报告,如下所示:
Ereigniszeilen += EreignisVorlage
.replace("<ZeileNr>", BerichtZaehler)
.replace("<KindName>", AlleEintraege[j][ColumnNameKind-1])
.replace("<LeistungsArt>", LeistungsArt)
.replace("<Datum>", DatumLeistung)
.replace("<CheckIn>", CheckIn)
.replace("<CheckOut>", CheckOut)
.replace("<TotalStunden>", TotalStunden)
.replace("<Bemerkung>", AlleEintraege[j][ColumnBemerkung-1]);
var AttachmentInhalt = AttachmentVorlage.replace("<EVENTS>", Ereigniszeilen);
var AttachmentInhalt = AttachmentVorlage
.replace("<BerichtsDatum>", BerichtsDatumFormatiert)
.replace("<EVENTS>", Ereigniszeilen);
var Bericht = [{fileName:"Bericht-Rapport.html", content: AttachmentInhalt}]
然后通过电子邮件发送:
MailApp.sendEmail("heinz.ruffieux@tfv-lac.org", TitelMitKind, "", //Versand des Emails
{htmlBody: "Guten Tag liebe Eltern,<br> Bonjour chers Parents, <br><br> \
Beiliegend senden wir Ihnen den wöchentlichen Bericht für die Betreuungsleistungen für <b>"
+KindName +" von " +StartDatumFormatiert +" bis " +EndDatumFormatiert +"</b>.<br><br> \
Nous vous envoyons ci-desous le rapport heptomadaire sur les services d'accueil du <b>"
+KindName + " du " +StartDatumFormatiert +" au " +EndDatumFormatiert +".</b><br><br>\
Mit freundlichen Grüssen <br> \
Meilleurs salutations <br><br> \
Tagesfamilienverein des Seebezirks <br> \
Association d'accueil familial de jour du district du Lac <br><br>" +ZusatztextDeutsch +"<br>"
+ZusatztextFranz, attachments: Bericht});
结果是包含一些文本的简单邮件和作为HTML附件的报告。此电子邮件仅发送给瑞士用户。
原则上,几个月以来一切都很好,但我在char编码方面遇到了一些问题。 spreadsheed(source)包含无法正确显示的德语和法语特殊字符。 特别是在iPhone和一些Windows IE9系统上。在我自己的Chrome和Firefox系统上,一切看起来都很棒。
上面的电子邮件的HTML正文文本到目前为止在每个系统上都能正确显示。
有人可以帮我解决如何在Google Apps脚本中应用正确的字符集吗?
非常感谢
亨氏
答案 0 :(得分:0)
我不是HTML方面的专家,但我想你应该在你的html体中构建一个标题来告诉浏览器(或电子邮件客户端应用程序)使用正确的字符集。您可以通过在gmail(使用您最喜欢的邮件客户端应用程序)上手动向自己发送相同的邮件来轻松地完成此操作,并分析邮件的html内容以了解它是如何完成的?
只是一个建议; - )
编辑:(另一个建议;-)如果附件中出现问题,为什么不用pdf转换呢? DocsList服务中有一个内置转换器。
var docN = 'docname';
var ID = 'ID you have get prior to this'
var pdf = DocsList.getFileById(ID).getAs('application/pdf').getBytes();
var attach = {fileName: docN+".pdf",content:pdf, mimeType:'application/pdf'};
MailApp.sendEmail('email@xxx.com', 'Your document as PDF ('+docN+')', 'see attachment', {attachments:[attach]});