0

Все:Как отправить jqPlot изображение в Microsoft ReportViewer RDLC для того, чтобы сгенерировать PDF

Вот информация о моем веб-среде разработки приложений:

-Microsoft Visual Studio Professional 2013

-.NET Framework 4.0

Я установил следующее:

-Microsoft Report Viewer 2012 Время воспроизведения

-Microsoft Report Viewer 2010 SP1 WebForms

-jqPlot версия Графики: 1.0.8 редакция: 1250

Для приложения, которое мы развиваем на работе, мы способны генерировать Graph с помощью jqPlot.

jqPlot поместит график, который генерируется в следующем разделе сНа в пределах страницы ASPX:

<div id="chartdiv" ></div> 

Однако один из требований проекта является обеспечение, что график может быть также размещен в формате PDF файл, если пользователь хочет сгенерировать PDF-документ с использованием Microsoft Report ASP.NET Report Definition Language Клиентская (rdlc) и технология Microsoft ReportViewer.

1) Можно ли каким-то образом получить диаграмму jqPlot как изображение в pdf-файл?

Если нет, я выяснил, как использовать API jqPlot для создания изображения в другом разделе div той же страницы ASPX.

Я просто хотел бы кратко описать код:

<div id="chartdiv" ></div> 


    var imgelem = $('#chartdiv').jqplotToImageElem(); 

2) Можно ли отправить переменную imgelem, который ссылается на изображение в RDLC файл Microsoft ReportViewer? Если да, может кто-то, пожалуйста, дайте мне шаг за шагом поэтапного плана относительно того, как мне следует реализовать такую ​​функцию?

ответ

1

Посмотрите на эту статью:

http://www.aspsnippets.com/Articles/Dynamically-add-and-display-external-Image-in-RDLC-Report-from-code-behind-in-ASPNet.aspx

можно вводить изображение, передавая его reportParameter к вашему просмотра отчетов:

ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/Report.rdlc"); 
    ReportViewer1.LocalReport.EnableExternalImages = true; 
    string imagePath = new Uri(Server.MapPath("~/images/Mudassar.jpg")).AbsoluteUri; 
    ReportParameter parameter = new ReportParameter("ImagePath", imagePath); 
    ReportViewer1.LocalReport.SetParameters(parameter); 
    ReportViewer1.LocalReport.Refresh();