-2

パネルがあり、パネル内にグリッドビューとチャート(フュージョンチャート)があります。私がやろうとしているのは、パネル内のすべてを画像として PDF にエクスポートすることです。これまでのところ、グリッドビューのみをエクスポートでき、グラフはまったく表示されません。パネル コンテンツのすべてを画像として PDF 形式にエクスポートするにはどうすればよいですか? お願いします。ヘルプ。これが私のコードです:私はITEXT Sharpを使用しています

protected void btnExport_Click(object sender, EventArgs e)
{
    Response.ContentType = "application/pdf";
    Response.AddHeader("content-disposition", "attachment;filename=Panel.pdf");
    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    StringWriter sw = new StringWriter();
    HtmlTextWriter hw = new HtmlTextWriter(sw);
    pnlPerson.RenderControl(hw);
    StringReader sr = new StringReader(sw.ToString());
    Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 100f, 0f);
    HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
    PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
    pdfDoc.Open();
    htmlparser.Parse(sr);
    pdfDoc.Close();
    Response.Write(pdfDoc);
    Response.End();

}
4

2 に答える 2

0

を使用してコントロールをビット<Control>.DrawToBitmapマップに描画し、そのビットマップを PDF に描画してみてください。

[ビットマップに描画] は、コントロールをビットマップに描画します。これは、印刷画面を押すようなものだと考えてください。

したがって、この場合、

Bitmap bm = new Bitmap(mygraph.Bounds.Width, mygraph.Bounds.Height);
mygraph.DrawToBitmap(new System.Drawing.Bitmap(),new System.Drawing.Rectangle(0,0,mygraph.Bounds.Width,mygraph.Bounds.Height)
pdfwriterthingy.writebitmap(bm);

私はあなたのPDFエクスポーターがビットマップを書く能力を持っているという大きなジャンプをしていますか?

于 2013-02-25T21:36:44.017 に答える
0

フュージョン チャートは、私が確認できる限り、ブラウザーでレンダリングされる Javascript です。その場合、その HTML を PDF に「レンダリング」することは特に成功しません。

Fusion Charts は、JPG および PDF レンダリング用の特定のサーバー側ハンドラーを提供します。代わりにそれらを使用する必要があります。

Fusion Charts サイトのその他のリソースを次に示します。

于 2013-02-25T21:37:55.630 に答える