
- Podstawowe renderowanie e-maili
- Dostosowywanie wyświetlania nagłówków
- Formatowanie daty i godziny
- Lokalizacja i tłumaczenie
- Stylizacja treści e-maila
- Zaawansowane techniki formatowania
Dla programistów budujących aplikacje do komunikacji e-mailowej, renderowanie e-maili jest kluczowe dla zapewnienia, że e-maile wysyłane przez aplikację są wyświetlane poprawnie i spójnie w różnych klientach e-mailowych, urządzeniach i ustawieniach. Aby skutecznie wykonać to zadanie, Aspose.Email dla .NET oferuje wszechstronną funkcjonalność do formatowania i dostosowywania treści e-maili w formacie HTML. W tym wpisie badamy, jak prezentować treść e-maili w formacie HTML z przykładami kodu C#, w tym różnymi opcjami dostosowywania dla prawidłowego wyświetlania w różnych klientach e-mailowych lub przeglądarkach.
C# API do renderowania e-maili w HTML
API, którego zamierzamy użyć do renderowania wiadomości .eml lub .msg w formacie HTML, jest częścią kompleksowej biblioteki, która zapewnia programistom potężne narzędzia do tworzenia, manipulowania i renderowania wiadomości e-mail w aplikacjach .NET. Aspose.Email dla .NET umożliwia programistom efektywne zarządzanie różnymi zadaniami związanymi z e-mailami w ich aplikacjach C#, co czyni go cennym zasobem dla potrzeb przetwarzania e-maili.
Aby zacząć korzystać z biblioteki, musisz ją zintegrować ze swoim projektem. Możesz łatwo ją uzyskać, pobierając ze strony Aspose lub używając NuGet.
Podstawowe renderowanie e-maili
Zacznijmy od podstawowego przykładu renderowania e-maila w formacie HTML przy użyciu C#. Ten fragment kodu demonstruje, jak załadować wiadomość e-mail z pliku, określić opcje formatowania HTML i zapisać wiadomość w formacie HTML.
- Utwórz instancję HtmlSaveOptions, aby określić preferencje formatowania. HtmlFormatOptions.WriteHeader zapewnia, że nagłówki są uwzględnione w wyjściowym pliku HTML.
- Załaduj wiadomość e-mail z pliku za pomocą MailMessage.Load.
- Na koniec zapisz wiadomość w formacie HTML przy użyciu metody Save.
var options = new HtmlSaveOptions | |
{ | |
HtmlFormatOptions = HtmlFormatOptions.WriteHeader | |
}; | |
var msg = MailMessage.Load(fileName); | |
msg.Save(outFileName, options); |
W rezultacie treść HTML wiadomości będzie wyglądać tak:

Dostosowywanie wyświetlania nagłówków
Następnie zbadamy, jak dostosować wyświetlanie nagłówków e-maili. Poniższy przykład kodu demonstruje, jak usunąć konkretne nagłówki, takie jak temat, przed renderowaniem e-maila w formacie HTML.
var options = new HtmlSaveOptions | |
{ | |
HtmlFormatOptions = HtmlFormatOptions.WriteHeader | |
}; | |
options.RenderingHeaders.Remove("Subject"); | |
var msg = MailMessage.Load(fileName); | |
msg.Save(outFileName, options); |
Tutaj modyfikujemy kolekcję RenderingHeaders w HtmlSaveOptions, aby wykluczyć nagłówek tematu z renderowanego wyjścia HTML.

Formatowanie daty i godziny
Znaczniki czasu często wymagają formatowania dla jasności i spójności. Poniższy przykład kodu demonstruje, jak dostosować format daty i godziny przed renderowaniem e-maila w formacie HTML.
var options = new HtmlSaveOptions | |
{ | |
HtmlFormatOptions = HtmlFormatOptions.WriteHeader, | |
FormatTemplates = | |
{ | |
[MhtTemplateName.DateTime] = "ddd, d MMM yyyy hh:mm" | |
} | |
}; | |
var msg = MailMessage.Load(fileName); | |
msg.Save(outFileName, options); |
Określając niestandardowy format daty i godziny przy użyciu właściwości FormatTemplates, zapewniamy, że znaczniki czasu są przedstawiane w przyjazny dla użytkownika sposób.

Lokalizacja i tłumaczenie
Lokalizacja jest kluczowa dla zapewnienia, że nazwy pól e-maili są dostępne dla globalnej publiczności. Ten przykład demonstruje, jak zlokalizować nazwy nagłówków e-maili, zastępując standardowe terminy ich przetłumaczonymi odpowiednikami.
var options = new HtmlSaveOptions | |
{ | |
HtmlFormatOptions = HtmlFormatOptions.WriteHeader | |
}; | |
options.FormatTemplates[MhtTemplateName.From] = options.FormatTemplates[MhtTemplateName.From].Replace("From:", "De :"); | |
options.FormatTemplates[MhtTemplateName.Sent] = options.FormatTemplates[MhtTemplateName.Sent].Replace("Sent:", "Envoyé :"); | |
var msg = MailMessage.Load(fileName); | |
msg.Save(outFileName, options); |
Tutaj zastępujemy angielskie etykiety nagłówków ich francuskimi odpowiednikami, kierując się do francuskojęzycznej publiczności.

Stylizacja treści e-maila
Stylizacja odgrywa kluczową rolę w poprawie wizualnej atrakcyjności treści e-maili. Poniższy przykład kodu demonstruje, jak zastosować niestandardowe style CSS do treści e-maila przed renderowaniem go w formacie HTML.
var options = new HtmlSaveOptions | |
{ | |
HtmlFormatOptions = HtmlFormatOptions.WriteHeader | |
}; | |
int index = options.CssStyles.IndexOf("</style>"); | |
options.CssStyles = options.CssStyles.Insert(index, @" | |
.headerLineTitle | |
{ | |
font-family:""Calibri""; | |
font-size:18.0pt; | |
}"); | |
var msg = MailMessage.Load(fileName); | |
msg.Save(outFileName, options); |
Wstawiając niestandardowe reguły CSS do wyjścia HTML, możemy poprawić estetykę i branding wiadomości e-mail.

Zaawansowane techniki formatowania
Na koniec zbadamy zaawansowane techniki formatowania dla renderowania e-maili. Przykład kodu demonstruje, jak zdefiniować niestandardowy układ tabeli do wyświetlania nagłówków e-maili w formacie HTML.
var options = new HtmlSaveOptions | |
{ | |
HtmlFormatOptions = HtmlFormatOptions.WriteHeader, | |
BeforeHeadersFormat = "<table style=\"width: 800px; background-color: #dddddd\">", | |
DefaultHeaderFormat = "<tr><td style=\"vertical-align: top; width:150px\"><b>{0}:</b></td><td style=\"vertical-align: top; width:150px\">{{0}}</td></tr>", | |
AfterHeadersFormat = "</table>" | |
}; | |
var msg = MailMessage.Load(fileName); | |
msg.Save(outFileName, options); |
Definiując niestandardowy znacznik HTML dla sekcji nagłówka, w tym układ tabeli, możemy stworzyć wizualnie atrakcyjne szablony e-maili.

Podsumowanie
W tym samouczku zbadaliśmy, jak renderować treść e-maili w formacie HTML przy użyciu Aspose.Email dla .NET. To narzędzie zapewnia, że e-maile wyświetlają się poprawnie w różnych klientach i urządzeniach, co jest kluczowym zadaniem dla programistów budujących aplikacje do komunikacji e-mailowej. Rozpoczęliśmy od podstawowego renderowania e-maili, demonstrując, jak ładować i zapisywać e-maile w formacie HTML. Następnie dostosowaliśmy nagłówki, takie jak usuwanie linii tematu, oraz formatowaliśmy znaczniki czasu dla jasności i spójności.
Omówiliśmy lokalizację i tłumaczenie, pokazując, jak zastąpić standardowe nazwy pól e-maili zlokalizowanymi wersjami, aby dotrzeć do globalnych odbiorców. Zastosowano niestandardowe style CSS, aby poprawić wizualną atrakcyjność e-maili, zapewniając, że są one zarówno funkcjonalne, jak i estetycznie przyjemne. Na koniec spojrzeliśmy na zaawansowane techniki formatowania, w tym definiowanie niestandardowych układów HTML dla nagłówków e-maili, aby stworzyć wizualnie atrakcyjne szablony. Te techniki pozwalają programistom na tworzenie wysoko dostosowanej i profesjonalnej treści e-mailowej przy użyciu Aspose.Email dla .NET.
Dzięki Aspose.Email dla .NET programiści mogą efektywnie zarządzać szerokim zakresem potrzeb przetwarzania e-maili, zapewniając, że ich aplikacje dostarczają użytkownikom płynne i dopracowane doświadczenie e-mailowe.
Aby uzyskać dodatkowe wsparcie i zasoby, Aspose zapewnia kompleksową dokumentację, obszerną referencję API oraz różnorodne darmowe narzędzia online i aplikacje w celu ulepszenia procesu programowania. Programiści mogą również uzyskać dostęp do darmowego forum wsparcia w celu uzyskania pomocy i wskazówek społeczności oraz być na bieżąco z najnowszymi wskazówkami i samouczkami dzięki blogowi Aspose. Te zasoby są nieocenione w maksymalizacji potencjału Aspose.Email dla .NET w Twoich projektach.