Configuración de página
La clase PrintOperation tiene un método llamado set_default_page_setup() que selecciona el tamaño de papel, orientación y márgenes predeterminados. Para mostrar un diálogo de configuración de página desde su aplicación, use el método Gtk::run_page_setup_dialog(), que devuelve un objeto Gtk::PageSetup() con la configuración elegida. Use este objeto para actualizar una PrintOperation y acceder a Gtk::PaperSize, Gtk::PageOrientation y los márgenes específicos de la impresora.
Debe guardar la Gtk::PageSetup elegida para poder usarla luego si se vuelve a mostrar el diálogo de configuración de la página.
Por ejemplo,
//Within a class that inherits from Gtk::Window and keeps m_refPageSetup and m_refSettings as members... Glib::RefPtr<Gtk::PageSetup> new_page_setup = Gtk::run_page_setup_dialog(*this, m_refPageSetup, m_refSettings); m_refPageSetup = new_page_setup;
El sistema de coordenadas de Cairo, en el manejador draw_page, rota automáticamente a la orientación de la página actual. Normalmente está dentro de los márgenes de la impresora, pero puede cambiar esto mediante el método PrintOperation::set_use_full_page(). La unidad de medida predeterminada es el píxel del dispositivo. Para seleccionar otras unidades, use el método PrintOperation::set_unit().