GtkPrinter
GtkPrinter — Представляет принтер
Функции
| GtkPrinter * | gtk_printer_new () |
| GtkPrintBackend * | gtk_printer_get_backend () |
| const char * | gtk_printer_get_name () |
| const char * | gtk_printer_get_state_message () |
| const char * | gtk_printer_get_description () |
| const char * | gtk_printer_get_location () |
| const char * | gtk_printer_get_icon_name () |
| int | gtk_printer_get_job_count () |
| gboolean | gtk_printer_is_active () |
| gboolean | gtk_printer_is_paused () |
| gboolean | gtk_printer_is_accepting_jobs () |
| gboolean | gtk_printer_is_virtual () |
| gboolean | gtk_printer_is_default () |
| gboolean | gtk_printer_accepts_ps () |
| gboolean | gtk_printer_accepts_pdf () |
| GList * | gtk_printer_list_papers () |
| int | gtk_printer_compare () |
| gboolean | gtk_printer_has_details () |
| void | gtk_printer_request_details () |
| GtkPrintCapabilities | gtk_printer_get_capabilities () |
| GtkPageSetup * | gtk_printer_get_default_page_size () |
| gboolean | gtk_printer_get_hard_margins () |
| gboolean | gtk_printer_get_hard_margins_for_paper_size () |
| gboolean | (*GtkPrinterFunc) () |
| void | gtk_enumerate_printers () |
Свойства
| gboolean | accepting-jobs | Чтение |
| gboolean | accepts-pdf | Чтение / Запись / Только для создания |
| gboolean | accepts-ps | Чтение / Запись / Только для создания |
| GtkPrintBackend * | backend | Чтение / Запись / Только для создания |
| char * | icon-name | Чтение |
| gboolean | is-virtual | Чтение / Запись / Только для создания |
| int | job-count | Чтение |
| char * | location | Чтение |
| char * | name | Чтение / Запись / Только для создания |
| gboolean | paused | Чтение |
| char * | state-message | Чтение |
Сигналы
| void | details-acquired | Выполнять последним |
Типы и значения
Иерархия объектов
GObject
├── GtkPrintBackend
╰── GtkPrinter
Файлы заголовков
#include <gtk/gtk.h>
Описание
Объект GtkPrinter представляет принтер. Вам нужно работать напрямую с принтерами только если вы используете непортируемый API GtkPrintUnixDialog.
Объект GtkPrinter позволяет получить информацию о состоянии принтера, такую как его описание, расположение, количество ожидающих заданий и т. д. Важно, что с помощью объекта GtkPrinter можно создать объект GtkPrintJob, который позволяет печатать на этом принтере.
Функции
gtk_printer_new ()
GtkPrinter * gtk_printer_new (const char *name,GtkPrintBackend *backend,gboolean virtual_);
Создаёт новый GtkPrinter.
Параметры
name | имя принтера | |
backend | ||
virtual_ | является ли принтер виртуальным |
Возвращает
новый GtkPrinter
gtk_printer_get_backend ()
GtkPrintBackend *
gtk_printer_get_backend (GtkPrinter *printer); Возвращает бэкенд принтера.
Параметры
printer |
Возвращает
бэкенд printer .
[transfer none]
gtk_printer_get_name ()
const char *
gtk_printer_get_name (GtkPrinter *printer); Возвращает имя принтера.
Параметры
printer |
Возвращает
имя printer
gtk_printer_get_state_message ()
const char *
gtk_printer_get_state_message (GtkPrinter *printer); Возвращает сообщение состояния, описывающее текущее состояние принтера.
Параметры
printer |
Возвращает
сообщение состояния printer
gtk_printer_get_description ()
const char *
gtk_printer_get_description (GtkPrinter *printer); Получает описание принтера.
Параметры
printer |
Возвращает
описание printer
gtk_printer_get_location ()
const char *
gtk_printer_get_location (GtkPrinter *printer); Возвращает описание местоположения принтера.
Параметры
printer |
Возвращает
местоположение printer
gtk_printer_get_icon_name ()
const char *
gtk_printer_get_icon_name (GtkPrinter *printer); Получает имя иконки для принтера.
Параметры
printer |
Возвращает
имя иконки для printer
gtk_printer_get_job_count ()
int
gtk_printer_get_job_count (GtkPrinter *printer); Получает количество задач, текущих в очереди на принтере.
Параметры
printer |
Возвращает
количество задач на printer
gtk_printer_is_active ()
gboolean
gtk_printer_is_active (GtkPrinter *printer); Возвращает, активен ли принтер (т.е. принимает ли новые задания).
Параметры
printer |
Возвращает
TRUE если printer активен
gtk_printer_is_paused ()
gboolean
gtk_printer_is_paused (GtkPrinter *printer); Возвращает, приостановлен ли принтер. Приостановленный принтер по-прежнему принимает задания, но не печатает их.
Параметры
printer |
Возвращает
TRUE если printer приостановлен
gtk_printer_is_accepting_jobs ()
gboolean
gtk_printer_is_accepting_jobs (GtkPrinter *printer); Возвращает, принимает ли принтер задания
Параметры
printer |
Возвращает
TRUE если printer принимает задания
gtk_printer_is_virtual ()
gboolean
gtk_printer_is_virtual (GtkPrinter *printer); Возвращает, является ли принтер виртуальным (т.е. не представляет собой реальное аппаратное обеспечение принтера, а что-то вроде класса CUPS).
Параметры
printer |
Возвращает
TRUE если printer виртуальный
gtk_printer_is_default ()
gboolean
gtk_printer_is_default (GtkPrinter *printer); Возвращает, является ли принтер принтером по умолчанию.
Параметры
printer |
Возвращает
TRUE если printer по умолчанию
gtk_printer_accepts_ps ()
gboolean
gtk_printer_accepts_ps (GtkPrinter *printer); Возвращает, принимает ли принтер входные данные в формате PostScript.
Параметры
printer |
Возвращает
TRUE если printer принимает PostScript
gtk_printer_accepts_pdf ()
gboolean
gtk_printer_accepts_pdf (GtkPrinter *printer); Возвращает, принимает ли принтер входные данные в формате PDF.
Параметры
printer |
Возвращает
TRUE если printer принимает PDF
gtk_printer_list_papers ()
GList *
gtk_printer_list_papers (GtkPrinter *printer); Перечисляет все размеры бумаги, которые поддерживает printer. Этот метод вернёт пустой список, если данные о принтере недоступны, см. gtk_printer_has_details() и gtk_printer_request_details().
Параметры
printer |
Возвращаемое значение
новый динамически выделенный список GtkPageSetup.
[element-type GtkPageSetup][transfer full]
gtk_printer_compare ()
int gtk_printer_compare (GtkPrinter *a,GtkPrinter *b);
Сравнивает два принтера.
Параметры
a | ||
b | another GtkPrinter |
Возвращаемое значение
0, если принтеры совпадают, отрицательное значение, если a < b, или положительное значение, если a > b.
gtk_printer_has-details ()
gboolean
gtk_printer_has_details (GtkPrinter *printer); Возвращает, доступны ли данные о принтере.
Параметры
printer |
Возвращаемое значение
TRUE если данные о printer доступны.
gtk_printer_request-details ()
void
gtk_printer_request_details (GtkPrinter *printer); Запрашивает данные о принтере. Когда данные будут доступны, на printer будет излучен сигнал “details-acquired”.
Параметры
printer |
gtk_printer_get-capabilities ()
GtkPrintCapabilities
gtk_printer_get_capabilities (GtkPrinter *printer); Возвращает возможности принтера.
Это полезно, когда вы используете ручное задание возможностей GtkPrintUnixDialog и хотите узнать, какие настройки принтер может обработать, а какие необходимо обработать самостоятельно.
Этот метод вернёт 0, если данные о принтере недоступны, см. gtk_printer_has_details() и gtk_printer_request_details().
Параметры
printer |
Возвращаемое значение
возможности принтера
gtk_printer_get_default_page-size ()
GtkPageSetup *
gtk_printer_get_default_page_size (GtkPrinter *printer); Возвращает размер страницы по умолчанию для printer.
Параметры
printer |
Возвращаемое значение
новый динамически выделенный GtkPageSetup с размером страницы по умолчанию принтера.
gtk_printer_get-hard-margins ()
gboolean gtk_printer_get_hard_margins (GtkPrinter *printer,double *top,double *bottom,double *left,double *right);
Возвращает жёсткие поля printer, т.е. поля, определяющие область по краям бумаги, в которую принтер не может распечатать.
Примечание: Этот метод не сработает, если данные о принтере недоступны, см. gtk_printer_has_details() и gtk_printer_request_details().
Параметры
printer | ||
top | место для хранения верхнего поля. | [out] |
bottom | место для хранения нижнего поля. | [out] |
left | место для хранения левого поля. | [out] |
right | место для хранения правого поля. | [out] |
Возвращаемое значение
TRUE если жёсткие поля были получены
gtk_printer_get-hard-margins-for-paper-size ()
gboolean gtk_printer_get_hard_margins_for_paper_size (GtkPrinter *printer,GtkPaperSize *paper_size,double *top,double *bottom,double *left,double *right);
Возвращает жёсткие поля printer для paper_size, т.е. поля, определяющие область по краям бумаги, в которую принтер не может распечатать.
Примечание: Этот метод не сработает, если данные о принтере недоступны, см. gtk_printer_has_details() и gtk_printer_request_details().
Параметры
printer | ||
paper_size | ||
top | место для хранения верхнего поля. | [out] |
bottom | место для хранения нижнего поля. | [out] |
left | место для хранения левого поля. | [out] |
right | место для хранения правого поля. | [out] |
Возвращаемое значение
TRUE если жёсткие поля были получены
GtkPrinterFunc ()
gboolean (*GtkPrinterFunc) (GtkPrinter *printer,gpointer data);
Тип функции, передаваемой в gtk_enumerate_printers(). Обратите внимание, что вам необходимо сохранить ссылку на printer, если вы хотите сохранить ссылку на неё после возвращения функции.
Параметры
printer | объект GtkPrinter | |
data | данные пользователя, переданные в | [closure] |
Возвращаемое значение
TRUE для остановки перечисления, FALSE для продолжения
gtk_enumerate_printers ()
void gtk_enumerate_printers (GtkPrinterFunc func,gpointer data,GDestroyNotify destroy,gboolean wait);
Вызывает функцию для всех GtkPrinters. Если func возвращает TRUE, перечисление останавливается.
Параметры
func | функция, вызываемая для каждого принтера | |
data | данные пользователя, передаваемые в | |
destroy | функция, вызываемая, если | |
wait | если |
Типы и значения
GtkPrinter
typedef struct _GtkPrinter GtkPrinter;
GtkPrintBackend
typedef struct _GtkPrintBackend GtkPrintBackend;
Подробное описание свойств
Свойство “accepting-jobs”
“accepting-jobs” gboolean
Это свойство равно TRUE, если принтер принимает задания.
Владелец: GtkPrinter
Флаги: Чтение
Значение по умолчанию: TRUE
Свойство “accepts-pdf”
“accepts-pdf” gboolean
TRUE, если принтер может принимать PDF.
Владелец: GtkPrinter
Флаги: Чтение / Запись / Только для создания
Значение по умолчанию: FALSE
Свойство “accepts-ps”
“accepts-ps” gboolean
TRUE, если принтер может принимать PostScript.
Владелец: GtkPrinter
Флаги: Чтение / Запись / Только для создания
Значение по умолчанию: TRUE
Свойство “backend”
“backend” GtkPrintBackend *
Бэкенд принтера.
Владелец: GtkPrinter
Флаги: Чтение / Запись / Только для создания
Свойство “icon-name”
“icon-name” char *
Имя иконки для принтера.
Владелец: GtkPrinter
Флаги: Чтение
Значение по умолчанию: "printer"
Свойство “is-virtual”
“is-virtual” gboolean
FALSE, если это реальный принтер.
Владелец: GtkPrinter
Флаги: Чтение / Запись / Только для создания
Значение по умолчанию: FALSE
Свойство “job-count”
“job-count” int
Количество заданий в очереди на принтере.
Владелец: GtkPrinter
Флаги: Чтение
Разрешённые значения: >= 0
Значение по умолчанию: 0
Свойство “location”
“location” char *
Расположение принтера.
Владелец: GtkPrinter
Флаги: Чтение
Значение по умолчанию: ""
Свойство “name”
“name” char *
Имя принтера.
Владелец: GtkPrinter
Флаги: Чтение / Запись / Только для создания
Значение по умолчанию: ""
Свойство “paused”
“paused” gboolean
Это свойство равно TRUE, если принтер приостановлен. Приостановленный принтер всё ещё принимает задания, но не печатает их.
Владелец: GtkPrinter
Флаги: Чтение
Значение по умолчанию: FALSE
Свойство “state-message”
“state-message” char *
Строка, отображающая текущее состояние принтера.
Владелец: GtkPrinter
Флаги: Чтение
Значение по умолчанию: ""
Подробное описание сигналов
Сигнал “details-acquired”
void user_function (GtkPrinter *printer, gboolean success, gpointer user_data)
Выдаётся в ответ на запрос подробной информации о принтере от бэкенда печати. Параметр success указывает, была ли информация получена успешно.
Параметры
printer | объект GtkPrinter, на котором сгенерирован сигнал | |
success |
| |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполнять последним
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer-old.gnome.org/gtk4/4.0/GtkPrinter.html