Is there a switch to include the embedded images in email PDF? Already using “ConvertOwned = true” to convert attachments.
var fileStream = new MemoryStream(file);
var loadOptions = new EmailLoadOptions { ConvertOwned = true, Format = extension switch { "eml" => EmailFileType.Eml, "msg" => EmailFileType.Msg, _ => null } };
using (Converter converter = new[] { "eml", "msg" }.Contains(extension) ? new Converter(() => fileStream, () => loadOptions) : new Converter(() => fileStream))
{
var pdfstreams = new List<MemoryStream>();
var pageStream = new GroupDocs.Conversion.Contracts.SaveDocumentStream(() => { pdfstreams.Add(new MemoryStream()); return pdfstreams.Last(); });
converter.Convert(pageStream, new PdfConvertOptions { });
if (pdfstreams.Count() == 1)
return pdfstreams.First().ToArray();
else
{
using (Merger merger = new Merger(new MemoryStream(pdfstreams.First().ToArray()), new PdfLoadOptions()))
{
for (var i = 1; i < pdfstreams.Count; i++)
merger.Join(new MemoryStream(pdfstreams[i].ToArray()));
var memoryStream = new MemoryStream();
merger.Save(memoryStream);
return memoryStream.ToArray();
}
}
}
@johntgold
Can you please share such a MSG file and we’ll investigate this scenario?
@johntgold
Please have a look at this screenshot.PNG (91.0 KB). Is this the image you are expecting in the output PDF?
correct ,
what setting am I missing?
@johntgold
You just have to apply API License like you did here.
@johntgold
Could you please share a simple console application using that issue could be preproduced at our end.?Also mention the API versions (Merger and Conversion) that you are using.
var fileStream = System.IO.File.OpenRead("FW Team Bravo Upcoming Features.msg");
var loadOptions = new EmailLoadOptions { ConvertOwned = true, Format = extension switch { "eml" => EmailFileType.Eml, "msg" => EmailFileType.Msg, _ => null } };
using (Converter converter = new[] { "eml", "msg" }.Contains(extension) ? new Converter(() => fileStream, () => loadOptions) : new Converter(() => fileStream))
{
var pdfstreams = new List<MemoryStream>();
var pageStream = new GroupDocs.Conversion.Contracts.SaveDocumentStream(() => { pdfstreams.Add(new MemoryStream()); return pdfstreams.Last(); });
converter.Convert(pageStream, new PdfConvertOptions { });
if (pdfstreams.Count() == 1)
System.IO.File.WriteAllBytes("FW Team Bravo Upcoming Features.pdf", pdfstreams.First().ToArray());
else
{
using (Merger merger = new Merger(new MemoryStream(pdfstreams.First().ToArray()), new PdfLoadOptions()))
{
for (var i = 1; i < pdfstreams.Count; i++)
merger.Join(new MemoryStream(pdfstreams[i].ToArray()));
var memoryStream = new MemoryStream();
merger.Save(memoryStream);
System.IO.File.WriteAllBytes("FW Team Bravo Upcoming Features.pdf", memoryStream.ToArray());
}
}
}
@johntgold
We’re investigating it. Your investigation ticket ID is CONVERSIONNET-4374, you’ll be notified about the outcomes.
even a way to include inline attachments with the other attachments when making the PDF is preferable. just don’t want to have information lost.
1 Like
@johntgold
We are still investigating this scenario. You’ll be notified as there’s any progress update.
How do I look up the status of tickets? We are planning on going live in the new year and want to purchase a package that just does it instead of rolling our own.
@johntgold
We’re still working on this issue. You’ll be notified about the outcomes ASAP.
@johntgold
Your reported issue CONVERSIONNET-4374 is now fixed in API version 20.12. However, we are still investigating this issue for .NET Core with ID CONVERSIONNET-4324. Let us know if this issue persists with .NET DLL.
The issues you have found earlier (filed as CONVERSIONNET-4324) have been fixed in this update. This message was posted using Bugs notification tool by yevgen-nykytenko