Spec-Zone.ru › OpenJDK 8

Класс PrinterJob

  • java.lang.Object
    • java.awt.print.PrinterJob

public abstract class PrinterJob
extends Object

Класс PrinterJob является основным классом, управляющим печатью. Приложение вызывает методы этого класса для настройки задания, необязательно для вызова диалогового окна печати с пользователем, а затем для печати страниц задания.

Конструкторы

Конструктор и описание
PrinterJob()

Объект PrinterJob должен быть создан с помощью статического метода getPrinterJob.

Методы

Модификатор и тип Метод и описание
abstract void cancel()

Отменяет задание печати, которое находится в процессе выполнения.

PageFormat defaultPage()

Создаёт новый экземпляр PageFormat и устанавливает его в стандартные размер и ориентацию.

abstract PageFormat defaultPage(PageFormat page)

Клонирует аргумент PageFormat и изменяет клон, чтобы описать стандартный размер страницы и ориентацию.

abstract int getCopies()

Получает количество копий для печати.

abstract String getJobName()

Получает имя документа, который нужно напечатать.

PageFormat getPageFormat(PrintRequestAttributeSet attributes)

Вычисляет PageFormat со значениями, согласованными со значениями, поддерживаемыми текущим PrintService для данного задания (т.е. значение, возвращаемое getPrintService()) и носителем, печатаемой областью и ориентацией, содержащимися в attributes.

static PrinterJob getPrinterJob()

Создаёт и возвращает PrinterJob, который изначально связан с принтером по умолчанию.

PrintService getPrintService()

Возвращает службу (принтер) для этого задания печати.

abstract String getUserName()

Получает имя пользователя, который выполняет печать.

abstract boolean isCancelled()

Возвращает true, если задание печати выполняется, но будет отменено при следующей возможности; в противном случае возвращает false.

static PrintService[] lookupPrintServices()

Удобный метод для поиска 2D-служб печати.

static StreamPrintServiceFactory[] lookupStreamPrintServices(String mimeType)

Удобный метод, который находит фабрики для потоковых служб печати, которые могут отображать 2D-графику.

abstract PageFormat pageDialog(PageFormat page)

Отображает диалоговое окно, которое позволяет изменить экземпляр PageFormat.

PageFormat pageDialog(PrintRequestAttributeSet attributes)

Удобный метод, который отображает кроссплатформенное диалоговое окно настроек страницы.

abstract void print()

Печатает набор страниц.

void print(PrintRequestAttributeSet attributes)

Печатает набор страниц, используя настройки в наборе атрибутов.

abstract boolean printDialog()

Представляет пользователю диалоговое окно для изменения свойств задания печати.

boolean printDialog(PrintRequestAttributeSet attributes)

Удобный метод, который отображает кроссплатформенное диалоговое окно печати для всех служб, которые способны печатать 2D-графику с использованием интерфейса Pageable.

abstract void setCopies(int copies)

Устанавливает количество копий для печати.

abstract void setJobName(String jobName)

Устанавливает имя документа, который нужно напечатать.

abstract void setPageable(Pageable document)

Запрашивает document количество страниц и PageFormat и Printable для каждой страницы, хранящейся в экземпляре Pageable, document.

abstract void setPrintable(Printable painter)

Вызывает painter для отображения страниц.

abstract void setPrintable(Printable painter, PageFormat format)

Вызывает painter для отображения страниц в указанном format.

void setPrintService(PrintService service)

Связывает этот PrinterJob с новой PrintService.

abstract PageFormat validatePage(PageFormat page)

Возвращает клон page со своими настройками, скорректированными для соответствия текущему принтеру этого PrinterJob.

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Конструкторы

PrinterJob

public PrinterJob()

Объект PrinterJob должен быть создан с помощью статического метода getPrinterJob.

Методы

getPrinterJob

public static PrinterJob getPrinterJob()

Создаёт и возвращает PrinterJob, первоначально связанный с принтером по умолчанию. Если на системе нет принтеров, метод всё равно вернёт PrinterJob, но getPrintService() вернёт null, и вызов print с этим PrinterJob может вызвать исключение. Приложениям, которым необходимо определить, есть ли подходящие принтеры перед созданием PrinterJob, следует убедиться, что массив, возвращаемый методом lookupPrintServices, не пуст.

Возвращает:
новый PrinterJob.
Исключения:
SecurityException - если существует менеджер безопасности, и его метод SecurityManager.checkPrintJobAccess() запрещает этому потоку создавать запрос на печать.

lookupPrintServices

public static PrintService[] lookupPrintServices()

Удобный метод для поиска 2D-служб печати. Службы, возвращаемые этим методом, могут быть установлены на PrinterJob которые поддерживают службы печати. Вызов этого метода эквивалентен вызову PrintServiceLookup.lookupPrintServices() и указанию Pageable DocFlavor.

Возвращает:
возможно пустой массив 2D-служб печати.
С:
1.4

lookupStreamPrintServices

public static StreamPrintServiceFactory[] lookupStreamPrintServices(String mimeType)

Удобный метод для поиска фабрик для потоковых служб печати, которые могут отображать 2D-графику. Пример использования:

FileOutputStream outstream;
 StreamPrintService psPrinter;
 String psMimeType = "application/postscript";
 PrinterJob pj = PrinterJob.getPrinterJob();

 StreamPrintServiceFactory[] factories =
     PrinterJob.lookupStreamPrintServices(psMimeType);
 if (factories.length > 0) {
     try {
         outstream = new File("out.ps");
         psPrinter =  factories[0].getPrintService(outstream);
         // psPrinter can now be set as the service on a PrinterJob
         pj.setPrintService(psPrinter)
     } catch (Exception e) {
         e.printStackTrace();
     }
 }
Службы, возвращаемые этим методом, могут быть установлены на экземпляры PrinterJob которые поддерживают службы печати. Вызов этого метода эквивалентен вызову StreamPrintServiceFactory.lookupStreamPrintServiceFactories() и указанию Pageable DocFlavor.

Параметры:
mimeType - требуемый формат вывода или null, если любой формат подходит.
Возвращает:
возможно пустой массив 2D-фабрик потоковых служб печати.
С:
1.4

getPrintService

public PrintService getPrintService()

Возвращает службу (принтер) для этой работы с принтером. Реализации этого класса, которые не поддерживают службы печати, могут вернуть null. null также будет возвращён, если принтеры недоступны.

Возвращает:
службу для этой работы с принтером.
С:
1.4
См. также:
setPrintService(PrintService), getPrinterJob()

setPrintService

public void setPrintService(PrintService service)
                     throws PrinterException

Связывает эту работу с принтером с новой PrintService. Этот метод переопределяется подклассами, которые поддерживают указание Print Service. Выбрасывает PrinterException, если указанная служба не может поддерживать интерфейсы Pageable и Printable, необходимые для поддержки 2D-печати.

Параметры:
service - служба печати, поддерживающая 2D-печать
Исключения:
PrinterException - если указанная служба не поддерживает 2D-печать, или этот класс PrinterJob не поддерживает установку 2D-службы печати, или указанная служба по другим причинам не является действительной службой печати.
С:
1.4
См. также:
getPrintService()

setPrintable

public abstract void setPrintable(Printable painter)

Вызывает painter для отрисовки страниц. Страницы документа, подлежащего печати этой PrinterJob, отрисовываются объектом Printable, painter. PageFormat для каждой страницы — это формат страницы по умолчанию.

Параметры:
painter - Printable для отрисовки каждой страницы документа.

setPrintable

public abstract void setPrintable(Printable painter,
                                  PageFormat format)

Вызывает painter для отрисовки страниц в заданном format. Страницы документа, подлежащего печати этой PrinterJob, отрисовываются объектом Printable, painter. Формат PageFormat каждой страницы — format.

Параметры:
painter - Printable для отрисовки каждой страницы документа
format - размер и ориентация каждой страницы для печати

setPageable

public abstract void setPageable(Pageable document)
                          throws NullPointerException

Запрашивает у document количество страниц и PageFormat и Printable для каждой страницы, хранящихся в экземпляре Pageable, document.

Параметры:
document - страницы для печати. Не может быть null.
Исключения:
NullPointerException - переданный Pageable был null.
См. также:
PageFormat, Printable

printDialog

public abstract boolean printDialog()
                             throws HeadlessException

Представляет диалоговое окно пользователю для изменения свойств задания печати. Этот метод отобразит системное диалоговое окно, если выбрана системная служба печати, и выбор принтеров будет ограничен этими системными службами печати. Чтобы отобразить кроссплатформенное диалоговое окно для всех служб, включая системные, вместо этого используйте printDialog(PrintRequestAttributeSet).

Реализации PrinterJob, которые могут использовать PrintService, обновят PrintService для этого PrinterJob, чтобы отразить новую выбранную пользователем службу.

Возвращает:
true если пользователь не отменяет диалог; false в противном случае.
Исключения:
HeadlessException - если GraphicsEnvironment.isHeadless() возвращает true.
См. также:
GraphicsEnvironment.isHeadless()

printDialog

public boolean printDialog(PrintRequestAttributeSet attributes)
                    throws HeadlessException

Удобный метод, отображающий кроссплатформенное диалоговое окно для всех служб, способных печатать 2D-графику с использованием интерфейса Pageable. Выбранный принтер при первом отображении диалогового окна будет отражать службу печати, в настоящее время подключенную к этому заданию печати. Если пользователь изменяет службу печати, PrinterJob будет обновлён, чтобы отразить это, если пользователь не отменяет диалоговое окно. Помимо выбора принтера, пользователь может также выбирать значения различных атрибутов запроса на печать.

Входящий параметр attributes будет отражать начальные требования приложения в диалоговом окне. Неуказанные атрибуты отображаются по умолчанию для службы. По выходе он будет отражать выбор пользователя. Выбор может быть обновлён реализацией, чтобы соответствовать поддерживаемым значениям для текущей выбранной службы печати.

При переходе пользователя к новому выбору службы печати копируются значения, основанные на настройках предыдущей службы и любых изменениях пользователя. Значения не основаны на исходных настройках, предоставленных клиентом.

За исключением выбранного принтера, состояние PrinterJob не обновляется для отражения изменений пользователя. Для того чтобы эти изменения повлияли на задание печати, атрибуты должны быть указаны в вызове метода print(PrintRequestAttributeSet). При использовании Pageable интерфейса, клиенты, намеревающиеся использовать выбранные пользователем носители, должны создать PageFormat, производный от выбора пользователя. Если пользователь отменяет диалоговое окно, атрибуты не будут отражать внесённые пользователем изменения.

Параметры:
attributes - на входе атрибуты, предоставленные приложением, на выходе содержимое обновляется для отражения выбора пользователя. Этот параметр не может быть null.
Возвращает:
true если пользователь не отменяет диалоговое окно; false в противном случае.
Исключения:
HeadlessException - если GraphicsEnvironment.isHeadless() возвращает true.
NullPointerException - если параметр attributes равен null.
С:
1.4
См. также:
GraphicsEnvironment.isHeadless()

pageDialog

public abstract PageFormat pageDialog(PageFormat page)
                               throws HeadlessException

Отображает диалоговое окно, позволяющее изменить экземпляр PageFormat. Аргумент page используется для инициализации элементов управления в диалоговом окне настройки страницы. Если пользователь отменяет диалог, метод возвращает исходный объект page без изменений. Если пользователь подтверждает диалог, метод возвращает новый объект PageFormat с внесёнными изменениями. В любом случае, исходный объект page не изменяется.

Параметры:
page - стандартный PageFormat, представленный пользователю для изменения
Возвращает:
исходный объект page при отмене диалогового окна; новый объект PageFormat содержащий указанный пользователем формат при подтверждении диалогового окна.
Исключения:
HeadlessException - если GraphicsEnvironment.isHeadless() возвращает true.
С:
1.2
См. также:
GraphicsEnvironment.isHeadless()

pageDialog

public PageFormat pageDialog(PrintRequestAttributeSet attributes)
                      throws HeadlessException

Удобный метод, отображающий кроссплатформенное диалоговое окно настройки страницы. Доступные варианты будут соответствовать службе печати, текущей в PrinterJob.

Входящий параметр attributes будет отражать начальные требования клиента в диалоговом окне. Неуказанные атрибуты отображаются по умолчанию для службы. По выходе он будет отражать выбор пользователя. Выбор может быть обновлён реализацией, чтобы соответствовать поддерживаемым значениям для текущей выбранной службы печати.

Результат будет эквивалентом PageFormat выборов в PrintRequestAttributeSet. Если пользователь отменяет диалог, атрибуты не будут отражать внесённые изменения, и возвращаемое значение будет null.

Параметры:
attributes - при вводе это атрибуты, предоставляемые приложением, при выводе содержимое обновляется, чтобы отразить выбор пользователя. Этот параметр не может быть null.
Возвращает:
формат страницы, если пользователь не отменяет диалог; null в противном случае.
Выбрасывает:
HeadlessException - если GraphicsEnvironment.isHeadless() возвращает true.
NullPointerException - если параметр attributes равен null.
С:
1.4
См. также:
GraphicsEnvironment.isHeadless()

defaultPage

public abstract PageFormat defaultPage(PageFormat page)

Клонирует аргумент PageFormat и изменяет клон, чтобы описать размер и ориентацию страницы по умолчанию.

Параметры:
page - PageFormat для клонирования и изменения
Возвращает:
клон page, изменённый для описания размера и ориентации страницы по умолчанию.

defaultPage

public PageFormat defaultPage()

Создаёт новый экземпляр PageFormat и устанавливает его размер и ориентацию по умолчанию.

Возвращает:
экземпляр PageFormat с размером и ориентацией по умолчанию.

getPageFormat

public PageFormat getPageFormat(PrintRequestAttributeSet attributes)

Вычисляет PageFormat с значениями, соответствующими значениям, поддерживаемым текущим PrintService для этой задачи (т.е. значение, возвращаемое getPrintService()) и носителями, печатаемой областью и ориентацией, содержащимися в attributes.

Вызов этого метода не обновляет задание. Он полезен для клиентов, у которых есть набор атрибутов, полученных из printDialog(PrintRequestAttributeSet attributes), и которым нужен PageFormat для печати объекта Pageable.

Параметры:
attributes - набор атрибутов печати, например, полученных путём вызова printDialog. Если attributes равен null, возвращается PageFormat по умолчанию.
Возвращает:
PageFormat со значениями, соответствующими значениям текущего сервиса и указанным атрибутам.
С:
1.6

validatePage

public abstract PageFormat validatePage(PageFormat page)

Возвращает клон page с настроенными значениями, совместимыми с текущим принтером этого PrinterJob. Например, возвращаемый PageFormat может иметь область изображения, скорректированную для размещения внутри физической области бумаги, используемой текущим принтером.

Параметры:
page - PageFormat для клонирования, настройки которого изменены для соответствия текущему принтеру
Возвращает:
PageFormat — клон page, настройки которого изменены для соответствия этому PrinterJob.

print

public abstract void print()
                    throws PrinterException

Печатает набор страниц.

Выбрасывает:
PrinterException — произошла ошибка в системе печати, из-за которой задание было прервано.
См. также:
Book, Pageable, Printable

print

public void print(PrintRequestAttributeSet attributes)
           throws PrinterException

Печатает набор страниц, используя настройки в наборе атрибутов. По умолчанию реализация игнорирует набор атрибутов.

Обратите внимание, что некоторые атрибуты могут быть установлены непосредственно в PrinterJob с помощью эквивалентных вызовов методов (например), копии: setcopies(int), имя задачи: setJobName(String) и указание размера носителя и ориентации через объект PageFormat.

Если в этом наборе атрибутов указано поддерживаемое значение атрибута, оно будет иметь приоритет над настройками API для этого вызова print() только. Для PageFormat указано следующее поведение: Если клиент использует интерфейс Printable, то параметр attributes этого метода проверяется на наличие атрибутов, которые задают носитель (по размеру), ориентацию и область изображения, и эти значения используются для построения нового PageFormat, который передаётся методу print() объекта Printable. См. Printable для объяснения требуемого поведения Printable, чтобы обеспечить оптимальную печать через PrinterJob. Для клиентов интерфейса Pageable PageFormat всегда будет предоставляться этим интерфейсом на странице.

Это позволяет приложению напрямую передавать настройки пользователя, возвращаемые из printDialog(PrintRequestAttributeSet attributes, в этот метод print().

Параметры:
attributes - набор атрибутов для задачи
Выбрасывает:
PrinterException — произошла ошибка в системе печати, из-за которой задание было прервано.
С:
1.4
См. также:
Book, Pageable, Printable

setCopies

public abstract void setCopies(int copies)

Устанавливает количество копий для печати.

Параметры:
copies - количество копий для печати
См. также:
getCopies()

getCopies

public abstract int getCopies()

Получает количество копий для печати.

Возвращает:
количество копий для печати.
См. также:
setCopies(int)

getUserName

public abstract String getUserName()

Получает имя пользователя, выполняющего печать.

Возвращает:
имя пользователя, выполняющего печать

setJobName

public abstract void setJobName(String jobName)

Устанавливает имя документа для печати. Имя документа не может быть null.

Параметры:
jobName - имя документа для печати
См. также:
getJobName()

getJobName

public abstract String getJobName()

Получает имя документа для печати.

Возвращает:
имя документа для печати.
См. также:
setJobName(java.lang.String)

cancel

public abstract void cancel()

Отменяет задание печати, которое выполняется. Если print был вызван, но не возвратил значение, этот метод сигнализирует о том, что задание должно быть отменено при следующей возможности. Если задание печати не выполняется, этот вызов ничего не делает.

isCancelled

public abstract boolean isCancelled()

Возвращает true если задание печати выполняется, но будет отменено при следующей возможности; в противном случае возвращает false.

Возвращает:
true если задание, которое выполняется, будет отменено; false в противном случае.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API