我的问题是,当我尝试将jasperprint导出到文本时,虽然它与pdf文件一起使用,但行/矩形不会出现在.txt文件中。
我试图修改笔宽但没有出现。
我的代码是:
JRDesignLine ltest = new JRDesignLine();
ltest.setBackcolor(Color.black);
ltest.setForecolor(Color.black);
ltest.setX(10);
ltest.setY(200);
ltest.setMode(JRDesignStaticText.MODE_OPAQUE);
ltest.setWidth(500);
ltest.setHeight(10);
ltest.setPen(JRDesignLine.FILL_SOLID);
bandHeader.addElement(ltest);
请提出任何建议。
答案 0 :(得分:0)
您在询问plain text format,这很简单。
JRTextExporter正在跳过 JRLine 元素并且不会绘制边框( JRLineBox )。
JRTextExporter的片段:
protected void exportElements(List<JRPrintElement> elements) {
for (int i = 0; i < elements.size(); i++) {
Object element = elements.get(i);
if (element instanceof JRPrintText) {
exportText((JRPrintText) element);
} else if (element instanceof JRPrintFrame) {
JRPrintFrame frame = (JRPrintFrame) element;
setFrameElementsOffset(frame, false);
try {
exportElements(frame.getElements());
} finally {
restoreElementOffsets();
}
}
}
正如您所看到的,只会打印 JRPrintText 。 protected void exportText(JRPrintText)方法对Boxes一无所知。您可以将它与 JRRtfExporter.exportText(JRPrintText)方法的来源进行比较。

_________________________________________________________

。它在开始时是\ r \ n,在行尾有一些下划线和\ r \ n。报告属性可以是这样的:<property name="net.sf.jasperreports.export.text.page.height" value="66"/>
<property name="net.sf.jasperreports.export.text.page.width" value="94"/>
<property name="net.sf.jasperreports.export.text.line.separator" value="
_________________________________________________________
"/>