2011-11-22 52 views
0

我正在使用DynamicJasper在運行時從一些表生成報告。在創建數據時,我有一些字段使用基本的html標籤對數據進行了樣式設置。通過將textElement的markup屬性設置爲html可以處理非常基本的標記,如粗體和斜體,以及碧玉報告。問題是無法找到使用DynamicJasper更改它的方法。如何使用DynamicJasper更改文本元素的標記值?

我試過使用addFieldProperty("markup", "html")ColumnBuilder中找到,但它將標記作爲屬性添加到字段標記(可能很明顯,它應該根據名稱執行此操作)而不是文本元素。

如何使用DynamicJasper更改文本元素的標記值?

回答

2

DynamicJasper API不包含方法設置markup

但是,您可以使用JasperReports API來滿足此需求。 例如,JRBasePrintTextJRCommonText接口有設置markup方法:

public void setMarkup(java.lang.String markup) 

的JRCommonText接口具有恆定的領域:

public static final String MARKUP_NONE = "none"; 
public static final String MARKUP_STYLED_TEXT = "styled"; 
public static final String MARKUP_HTML = "html"; 
public static final String MARKUP_RTF = "rtf"; 

您可以修改DynamicJasper的類爲您的需求像this post,爲例。

+0

我所做的是通過DynamicJasper運行一切,然後在填充報告之前將樣式標記值更改爲html。它的工作,似乎有點骯髒。我希望有更好的辦法。我想這是一個真正的問題,因爲你鏈接的文章有我想要的,所以沒有人回覆關於將他的更改添加到代碼庫的海報。不管怎樣,謝謝。 –

+0

您能否給我一個如何更改報告標記的代碼示例?謝謝! – janhink