Отчет Jasper в формате pdf. В некоторых абзацах первый символ строки — запятая.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Отчет Jasper в формате pdf. В некоторых абзацах первый символ строки — запятая.

Сообщение Anonymous »

Когда я использую Jasper Report для рендеринга PDF-файлов на Java, я обнаружил, что в некоторых абзацах начало строки начинается с запятой или скобки. Я не хочу, чтобы такие символы появлялись в начале строки. Как я могу решить эту проблему? Вот код:
Структура кода:

Код: Выделить всё

src/
└── main/
├── java/
│   └── org/
│       └── demo/
│           └── App.java
└── resources/
├── fonts/
│   └── fonts.xml
└── jasperreports_extension.properties
pom.xml
pom.xml:

Код: Выделить всё



net.sf.jasperreports
jasperreports
6.20.6


App.java:

Код: Выделить всё

package org.demo;

import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;

import java.io.*;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
* Hello world!
*
*/
public class App {

private static JasperPrint getJasperPrint(InputStream jasperStream, Map parameters, List list) throws JRException {
JRDataSource dataSource = null;
if (null == list || list.size() == 0) {
dataSource = new JREmptyDataSource();
} else {
dataSource = new JRBeanCollectionDataSource(list);
}
return JasperFillManager.fillReport(jasperStream, parameters, dataSource);
}

public static void exportToPdf(String jasperPath, Map parameters, List list, String filePath)  {
try (InputStream inputStream = Files.newInputStream(Paths.get(jasperPath));
FileOutputStream fileOutputStream = new FileOutputStream(filePath) ){
JasperPrint jasperPrint = getJasperPrint(inputStream, parameters, list);
JasperExportManager.exportReportToPdfStream(jasperPrint, fileOutputStream);
} catch (Exception e) {
e.printStackTrace();
}
}

public static void main( String[] args ) throws IOException {
String testParameter = "abc";
String jasperPath = "/Users/zhuhongxu/Downloads/pdftest/break/111.jasper";
String pdfPath = "/Users/zhuhongxu/Downloads/pdftest/break/17.pdf";
File file = new File(pdfPath);
if (!file.exists()) {
boolean newFile = file.createNewFile();
System.out.println("file create success");
if (!newFile) {
return;
}
}
Map map = new HashMap();
map.put("Parameter1", testParameter);
exportToPdf(jasperPath, map, null, pdfPath);
}
}
Файл шаблона Jasper: jasperreports_extension.properties:

Код: Выделить всё

net.sf.jasperreports.extension.registry.factory.simple.font.families=net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory
net.sf.jasperreports.extension.simple.font.families.lobstertwo=fonts/fonts.xml
И PDF-файл:
Изображение

Красные стрелки указывают, где, по моему мнению, есть проблемы, то есть эти символы, которые я не хочу появляться в начале линия。

Подробнее здесь: https://stackoverflow.com/questions/797 ... paragraphs
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»