Jasper Report PDF Das erste Zeichen einer Zeile ist ein Komma in einem AbsatzJava

Java-Forum
Anonymous
 Jasper Report PDF Das erste Zeichen einer Zeile ist ein Komma in einem Absatz

Post by Anonymous »

Wenn ich Jasper Report zum Rendern von PDFs in Java verwende, stelle ich fest, dass in einigen Absätzen der Zeilenanfang mit einem Komma oder einer Klammer beginnt. Ich möchte nicht, dass solche Zeichen am Anfang einer Zeile erscheinen. Wie kann ich dieses Problem lösen? Hier ist der Code:
Codestruktur:

Code: Select all

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

Code: Select all



net.sf.jasperreports
jasperreports
6.20.6


App.java:

Code: Select all

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-Vorlagendatei:

Code: Select all





























jasperreports_extension.properties:

Code: Select all

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
Und das PDF ist:
Image

Die roten Pfeile zeigen an, wo es meiner Meinung nach Probleme gibt, das heißt, diese Symbole möchte ich nicht am Anfang eines a erscheinen Zeile。

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post