[英]printing in java sets a title somewhere to “Java Printing”
以下代碼有效,但是當我打印到 PDFCreator 打印機驅動程序時,它的默認標題是“Java 打印”。 (我懷疑 Adobe Distiller 也是如此,因為如果您在Google 上搜索帶有 Java Printing 的 PDF ,您會得到很多結果。)
有沒有辦法將它從“Java 打印”更改為另一個字符串?
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( String jobName )。
job.setJobName("New Printing Name");
API 說它是要打印的文檔的名稱。
我在 Ubuntu 上運行我的代碼,它不打印標題,所以我無法驗證它是否有效。
相同的答案,但對於DocPrintJob
:
PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
pras.add(new JobName("your job name", Locale.getDefault()));
docPrintJob.print(docToPrint, pras);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.