在java中打印会将某个位置的标题设置为;“Java打印”;
下面的代码可以工作,但是当我打印到PDFCreator打印机驱动程序时,它的默认标题是“Java打印”。(我怀疑Adobe Distiller也是如此,因为如果你这样做,你会得到很多结果。) 有没有办法将“Java打印”更改为另一个字符串在java中打印会将某个位置的标题设置为;“Java打印”;,java,printing,Java,Printing,下面的代码可以工作,但是当我打印到PDFCreator打印机驱动程序时,它的默认标题是“Java打印”。(我怀疑Adobe Distiller也是如此,因为如果你这样做,你会得到很多结果。) 有没有办法将“Java打印”更改为另一个字符串 package com.example.test.gui; import java.awt.Graphics; import java.awt.print.PageFormat; import java.awt.print.Printable; import
package com.example.test.gui;
import java.awt.Graphics;
import java.awt.print.PageFormat;
import java.awt.print.Printable;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
public class TestPrint implements Printable
{
@Override public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) throws PrinterException {
if (pageIndex != 0)
return NO_SUCH_PAGE;
graphics.drawString("Hi there", 100, 100);
return PAGE_EXISTS;
}
public void printPage() throws PrinterException
{
PrinterJob job = PrinterJob.getPrinterJob();
boolean ok = job.printDialog();
if (ok) {
job.setPrintable(this);
job.print();
}
}
public static void main(String[] args) {
try {
new TestPrint().printPage();
}
catch (PrinterException e) {
e.printStackTrace();
}
}
}
您是否尝试过此setJobName(字符串jobName) API说它是要打印的文档的名称 我在Ubuntu上运行我的代码,它没有打印标题,因此我无法验证它是否有效。相同的答案,但:
万岁!成功了!这很简单,但很容易混淆这些不同的对象的作用。
job.setJobName("New Printing Name");
PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
pras.add(new JobName("your job name", Locale.getDefault()));
docPrintJob.print(docToPrint, pras);