Recursos de Impressão do Aspose.Email
Recursos de Impressão
O namespace Aspose.Email.Printing fornece um rico conjunto de recursos para imprimir mensagens de e-mail em diferentes formatos (XPS ou TIFF) e configurar layouts de página. Este artigo os descreve. Existem várias opções de como uma mensagem de e-mail pode ser impressa a partir do Aspose.Email:
- Imprimir apenas o corpo da mensagem.
- Imprimir o corpo da mensagem e os cabeçalhos.
- Imprimir um corpo HTML.
- Configurar o layout da página.
- Ajustar uma TIFF automaticamente para a impressora.
- Ajustar a DPI alvo para a saída TIFF.
Imprimindo o Corpo da Mensagem
O seguinte trecho de código mostra como criar uma mensagem e imprimi-la sem cabeçalhos primeiro para um arquivo XPS e depois para um arquivo TIFF.
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
// Declare message as an MailMessage instance | |
MailMessage message = new MailMessage(); | |
message.From = "user1@domain.com"; | |
message.To = "user2@domain.com"; | |
message.Subject = "My First Mail"; | |
message.Date = DateTime.Now; | |
message.Body = "Text is the Mail Message"; | |
// Instantiate an instance of MailPrinter and Set the MessageFormattingFlags to none to display only the message body | |
var printer = new Aspose.Email.Printing.MailPrinter(); | |
printer.FormattingFlags = Aspose.Email.Printing.MessageFormattingFlags.None; | |
// Print the email to an XPS and TIFF file | |
printer.Print(message, dataDir + "PrintXPS_out.xps", Aspose.Email.Printing.PrintFormat.XPS); | |
printer.Print(message, dataDir + "PrintTIFF_out.tiff", Aspose.Email.Printing.PrintFormat.Tiff); |
Imprimindo Cabeçalhos e Corpo da Mensagem
O seguinte trecho de código mostra como exibir os cabeçalhos e imprimi-los, bem como o corpo da mensagem, alterando os FormattingFlags para MailInfo.
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
printer.FormattingFlags = Aspose.Email.Printing.MessageFormattingFlags.MailInfo; |
Imprimindo Mensagem com Corpo HTML
Mensagens com corpo HTML também podem ser impressas. O seguinte trecho de código mostra como imprimir uma mensagem com corpo HTML.
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
// Body of the email message | |
message.IsBodyHtml = true; | |
message.HtmlBody = "<html><body><h1>Hello this is html body in Heading 1 format </h1></body></html>"; |
Configurando Layout da Página para Impressão
Aspose.Email.Printing.MailPrinter fornece controles para definir as seguintes propriedades do layout da página:
Propriedade | Descrição | Valor Padrão |
---|---|---|
FormattingFlags | Mostrar ou ocultar detalhes da mensagem. | Nenhum [1] |
MarginTop | Obter ou definir a margem superior. | 0.5 |
MarginLeft | Obter ou definir a margem esquerda. | 0.5 |
MarginBottom | Obter ou definir a margem inferior. | 0.5 |
MarginRight | Obter ou definir a margem direita. | 0.5 |
PageUnit | Obter ou definir as unidades de medida. | Polegada [2] |
PageHeight | Obter ou definir a altura da página. | 11.69 |
PageWidth | Obter ou definir a largura da página. | 8.27 |
- Existem duas bandeiras: MailInfo e Nenhum
- As unidades da página podem ser uma de Polegada, Pixel, Ponto, Cm ou Milímetro.
O trecho de código a seguir usa configurações arbitrárias para ilustrar como essas propriedades são usadas. Ele configura uma página com 20 cm de altura e 8 cm de largura, com margens de 2 cm.
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
// Instantiate an instance of MailPrinter | |
var printer = new Aspose.Email.Printing.MailPrinter(); | |
// Just for testing, get the default property values | |
double width = printer.PageWidth; | |
double height = printer.PageHeight; | |
// Set page layout for printing | |
printer.PageUnit = Aspose.Email.Printing.PrinterUnit.Cm; | |
printer.MarginTop = 2; | |
printer.MarginBottom = 2; | |
printer.MarginLeft = 2; | |
printer.MarginRight = 2; | |
printer.PageWidth = 8; | |
printer.PageHeight = 20; |
Ajustar automaticamente uma TIFF
Aspose.Email.Printing fornece a propriedade MessageFormattingFlags.AutoFitWidth que permite ajustar automaticamente a TIFF para a impressora. O seguinte trecho de código mostra como usar o ajuste automático.
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
string dataDir = RunExamples.GetDataDir_KnowledgeBase(); | |
// Instantiate an instance of MailPrinter | |
Printing.MailPrinter printer = new Printing.MailPrinter(); | |
printer.FormattingFlags = Printing.MessageFormattingFlags.AutoFitWidth; | |
MailMessage msg = MailMessage.Load(dataDir + "message3.msg", new MsgLoadOptions()); | |
printer.Print(msg, dataDir + "AutoFit_out.tiff", Printing.PrintFormat.Tiff); |
Ajustar DPI alvo para saída TIFF
O seguinte trecho de código mostra como usar DPI para saída TIFF.
// For complete examples and data files, please go to https://github.com/aspose-email/Aspose.Email-for-.NET | |
// The path to the File directory and Instantiate an instance of MailPrinter | |
string dataDir = RunExamples.GetDataDir_KnowledgeBase(); | |
Printing.MailPrinter printer = new Printing.MailPrinter(); | |
printer.DpiX = 300; | |
printer.DpiY = 300; | |
MailMessage msg = MailMessage.Load(dataDir + "message3.msg", new MsgLoadOptions()); | |
printer.Print(msg, dataDir + "AdjustTargetDPI_out.tiff", Printing.PrintFormat.Tiff); |