I am trying to generate a pdf from a webpage and am able to get the text content, but not images to export. I know there are some settings with HtmlFormatProvider for how to export images, but I have been unable to successfully do this.
Here is what I have so far:
Here is what I have so far:
protected
void
ConvertToPdfButton_Click(
object
sender, ImageClickEventArgs e)
{
byte
[] buffer =
new
byte
[0];
string
urlToConvert = HttpContext.Current.Request.Url.GetLeftPart(UriPartial.Path);
string
html =
string
.Empty;
var thread =
new
Thread(() =>
{
PdfFormatProvider provider =
new
Telerik.Windows.Documents.FormatProviders.Pdf.PdfFormatProvider();
HtmlFormatProvider htmlProvider =
new
HtmlFormatProvider();
//Settings
HtmlImportSettings importSettings =
new
HtmlImportSettings();
importSettings.UseHtmlHeadingStyles =
true
;
htmlProvider.ImportSettings = importSettings;
var webRequest = HttpWebRequest.Create(urlToConvert);
RadDocument document;
using
(Stream stream = webRequest.GetResponse().GetResponseStream())
{
document = htmlProvider.Import(stream);
}
document.LayoutMode = DocumentLayoutMode.Paged;
document.EnsureDocumentMeasuredAndArranged();
buffer = provider.Export(document);
});
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
Response.Clear();
MemoryStream ms =
new
MemoryStream(buffer);
Response.ContentType =
"application/pdf"
;
Response.AddHeader(
"content-disposition"
,
"attachment;filename=DesignandBuildwithMetal PDF.pdf"
);
Response.Buffer =
true
;
ms.WriteTo(Response.OutputStream);
Response.End();
}