hi,
I just save document in memorystream(Without using any path)
After i read content using stream reader
then i attach stream reader to body of the mail
Here code is
//code
MemoryStream mhtmlStream = new MemoryStream();
// from aspose.word
doc.Save(mhtmlStream, SaveFormat.Mhtml); //not using any file path
StreamReader reader = new StreamReader(mhtmlStream, System.Text.Encoding.UTF8, true);
mhtmlStream.Position = 0;
MailMessage mail = new MailMessage();
mail.From = new MailAddress("abc@gmail.com");
mail.Body = reader.ReadToEnd();
mail.IsBodyHtml = true;
SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com", 587);
SmtpServer.Credentials = new System.Net.NetworkCredential("xyz@gmail.com", "123456");
SmtpServer.EnableSsl = true;
SmtpServer.Send(mail);
this is my code... My word document contains single table with data's...
I just convert word to html
then send to the body of the mail
Now plain text only showing instead of table using html text...
how to avoid this...
Pls Help me
Hi Narendran,
Thanks for contacting support.
Can you please share the input DOC file, so that we can test the scenario in our environment. We are sorry for this inconvenience.
Hi,
Thanks for reply
I attached the source code…
Pls rearrange the document file path, sender and receiver email id
Thanks,
Narendran
Hi Narendran,
Thanks for sharing the sample project.
We are working on testing the scenario and will keep you updated with our findings.
Hi Narendran,
Thanks for your inquiry.
I am afraid you simply cannot pass MHTML to it. MailMessage is used to assemble an e-mail from its parts i.e. HTML code, referenced images and so on, while MHTML is in fact an assembled e-mail. What you are trying to do is insert an assembled e-mail into another e-mail. I suspect that MailMessage is not smart enough to re-assemble MTHML into another message.
Please try saving to HTML format instead and specify various options as follows:
...
...
...
//This is actually i am doing
doc.Save(@"C:\DATA\file.doc");
//Now i am going to send the above table to body of the mail
MemoryStream htmlStream = new MemoryStream();
HtmlSaveOptions opts = new HtmlSaveOptions(SaveFormat.Html);
opts.ExportImagesAsBase64 = true;
opts.ExportFontsAsBase64 = true;
//Store doucment as a html in memorystraeam
doc.Save(htmlStream, opts);
//Here is the problem...
StreamReader reader = new StreamReader(htmlStream, System.Text.Encoding.UTF8, true);
htmlStream.Position = 0;
MailMessage mail = new MailMessage();
mail.From = new MailAddress("xyz@gmail.com");
mail.Body = reader.ReadToEnd();
mail.IsBodyHtml = true;
mail.BodyEncoding = Encoding.UTF8;
mail.To.Add("abcd@gmail.com");
SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com", 587);
SmtpServer.Credentials = new System.Net.NetworkCredential("xyz@gmail.com", " trtr098)(*");
SmtpServer.EnableSsl = true;
SmtpServer.Send(mail);
Thanks for Reply…
The above code works fine
But
In this above code HtmlsaveOptions did not support "opts.ExportFontsAsBase64 = true"
And moreover Images is not visible in body of the mail… That’s the main problem
Pls reply the solution
Thanks
Hi Narendran,
Thanks for your inquiry. To ensure a timely and accurate response, please attach the following resources here for testing:
- Your input Word document DOCX containing images and text formatted with custom font
- Font files
As soon as you get these pieces of information ready, we'll start further investigation into your issue and provide you more information. Thanks for your cooperation.
PS: To attach these resources, please zip them and Click 'Reply' button that will bring you to the 'reply page' and there at the bottom you can include any attachments with that post by clicking the 'Add/Update' button.
Best regards,
I Have attached file
Please tell the solution for getting image in gmail
Hi Narendran,
Thanks for sharing the sample files.
We have further investigated the scenario and as per our observations, Aspose.Words for .NET is properly embedding images and fonts inside resultant HTML file. However we are further looking into this scenario on why images are not appearing in email. We will keep you updated with our findings.
Hi Narendran,
The MHTML output generated by Aspose.Words in this case correctly embeds the information and there doesn’t seem any issue with the output file in this case. We loaded the same MHTML file using Aspose.Email API instead of System.NET
and sent it using the API’s SmtpClient
. No such issue was observed at the receiver end. Thus, it doesn’t seem to be an issue with Aspose.Words API as the comparative result of Aspose.Email API show. You can also try with Aspose.Email API and let us know your feedback.
You are welcome and please feel free to write to us if you have any further query in this regard.