using System.IO;
using System.Text;
using Aspose.Pdf;
namespace System.Extensions
{
public static class PdfConverter
{
public static string Read(Stream stream, string fullPath)
{
if (Directory.Exists(fullPath))
{
Directory.Delete(fullPath, true);
}
Directory.CreateDirectory(fullPath);
try
{
var doc = new Document(stream);
var saveOptions = new HtmlSaveOptions()
{
FixedLayout = true,
SplitIntoPages = false,
SplitCssIntoPages = false,
RasterImagesSavingMode = HtmlSaveOptions.RasterImagesSavingModes.AsEmbeddedPartsOfPngPageBackground,
SpecialFolderForAllImages = fullPath
};
var path = Path.Combine(fullPath, "i.html");
doc.Save(path, saveOptions);
string html;
using (var fileStream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
var reader = new StreamReader(fileStream, Encoding.UTF8);
html = reader.ReadToEnd();
reader.Close();
}
File.Delete(path);
return html;
}
catch (Exception e)
{
Console.WriteLine(e);
throw;
}
}
}
}