1
J'essaie d'exporter des résultats avec java print/printdialog. Je veux imprimer des lignes multiples (en utilisant "\ n"), mais mon exportation est une simple ligne. Comment puis-je résoudre cette cause?Comment exporter du texte multiligne avec printdialog en java?
ici est mon exemple de code:
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.print.PageFormat;
import java.awt.print.Printable;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
public class PrintableDemo1 implements Printable {
public int print(Graphics g, PageFormat pf, int pageIndex) {
StringBuilder builder = new StringBuilder();
builder.append("Test Result:").append("\n")
.append("First Line").append("\n")
.append("Second Line").append("\n")
.append("Third Line").append("\n")
.append("Fourth Line").append("\n")
.append("Last Line");
if (pageIndex != 0)
return NO_SUCH_PAGE;
Graphics2D g2 = (Graphics2D) g;
g2.setFont(new Font("Serif", Font.PLAIN, 12));
g2.setPaint(Color.black);
g2.drawString(builder.toString(), 144, 144);
return PAGE_EXISTS;
}
public static void main(String[] args) {
PrinterJob pj = PrinterJob.getPrinterJob();
pj.setPrintable(new PrintableDemo1());
try {
pj.print();
} catch (PrinterException e) {
e.printStackTrace();
}
}
}
* « Je veux imprimer des lignes multiples (avec l'aide de « \ n ») » * - Vous ne pouvez pas, ce n'est pas comment fonctionne 'drawString', vous devrez dessiner chaque ligne individuellement – MadProgrammer
[Dessin Multiple Lignes de texte] (http://docs.oracle.com/javase/tutorial/2d/text/drawmulstring.html) peut être plus compliqué que nécessaire, mais c'est une bonne référence;) – MadProgrammer
Si vous êtes vraiment courageux [ Voici un exemple] (http://stackoverflow.com/questions/14007041/awt-eventqueue-0-java-lang-nullpointerexception/14007091#14007091) – MadProgrammer