2010-12-23 24 views
0

我有一個HTMLEditor(ajax控件)。我正在將目前內容HTML編輯成PDF格式如下在c#中的pdf轉換過程中不能識別'Enter'

protected void Button2_Click(object sender, EventArgs e) 
    { 

     String dbDate = DateTime.ParseExact(TextBox3.Text, "dd/mm/yyyy", null).ToString("yyyy-mm-dd"); 

     //Extract data from Page (pd). 
     //Label16.Text = Editor1.Content; // Attribute 
     // makae ready HttpContext 
     HttpContext.Current.Response.Clear(); 
     HttpContext.Current.Response.ContentType = "application/pdf"; 
     // Create PDF document 
     Document pdfDocument = new Document(PageSize.A4, 80, 50, 30, 65); 


     PdfWriter wri = PdfWriter.GetInstance(pdfDocument, new FileStream("d://" + HiddenField1.Value + HiddenField4.Value + dbDate + ".pdf", FileMode.Create)); 

     PdfWriter.GetInstance(pdfDocument, HttpContext.Current.Response.OutputStream); 

     pdfDocument.Open(); 
     string htmlText = Editor1.Content; 
     System.Collections.Generic.List<IElement> htmlarraylist = HTMLWorker.ParseToList (new StringReader(htmlText), null); 
     for (int k = 0; k < htmlarraylist.Count; k++) 
     { 
      pdfDocument.Add((IElement)htmlarraylist[k]); 
     } 

     pdfDocument.Close(); 
     HttpContext.Current.Response.End(); 
    } 

現在的問題是,如果我按在HTML編輯輸入,生成的PDF不顯示任何變化。

我已經硬編碼的一些內容到HTML編輯:

"<br/>" + "<P align= 'right'>"+"By Order of the Court,".Replace(Environment.NewLine,"<br/>")+"</P>" + 
    "<br/><br/>" + "<P align= 'right'>(G. M. Redker)&nbsp;&nbsp;&nbsp;&nbsp;" + 
    "<br/>" + "Assistant Registrar &nbsp;" + 
    "<br/>" + "High Court of Bombay" + 
    "<br/>" + "Panaji Bench (Goa)&nbsp;&nbsp;&nbsp;" + "</P>"; 

現在如果我按之前進入由法院命令的更改不會轉移到PDF文件。

即即使我按下輸入鍵後一行,比pdf不顯示任何兩行之間的差距,它顯示一條連續的線。

所有這一切只發生在我部署應用程序在服務器上,我的開發機器顯示正確的輸出。

這是錯誤的,因爲我做的跟隨着:

string htmlText = Editor1.Content; 
    System.Collections.Generic.List<IElement> htmlarraylist = HTMLWorker.ParseToList (new StringReader(htmlText), null); 
    for (int k = 0; k < htmlarraylist.Count; k++) 
    { 
     pdfDocument.Add((IElement)htmlarraylist[k]); 
    } 

請幫我解決我的問題

回答

1

通常情況下,空白被摺疊在HTML中,所以這種行爲似乎正常。使用< br/>標籤來模擬新行,或使用<p> </p >標籤。

+0

如何在我的代碼中使用它,HTMLEditor內容由用戶修改,以便用戶可以在任何地方按Enter鍵,我如何檢測它? – Ishan 2010-12-23 09:19:03

相關問題