Hoogle Search
Within LTS Haskell 24.20 (ghc-9.10.3)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
module GI.Gtk.Interfaces.
PrintOperationPreview GtkPrintOperationPreview is the interface that is used to implement print preview. A GtkPrintOperationPreview object is passed to the PrintOperation::preview signal by PrintOperation.
-
gi-gtk4 GI.Gtk.Interfaces.PrintOperationPreview Memory-managed wrapper type.
PrintOperationPreview :: ManagedPtr PrintOperationPreview -> PrintOperationPreviewgi-gtk4 GI.Gtk.Interfaces.PrintOperationPreview No documentation available.
type
PrintOperationPreviewGotPageSizeCallback = PrintContext -> PageSetup -> IO ()gi-gtk4 GI.Gtk.Interfaces.PrintOperationPreview Emitted once for each page that gets rendered to the preview. A handler for this signal should update the context according to pageSetup and set up a suitable cairo context, using printContextSetCairoContext.
type
PrintOperationPreviewReadyCallback = PrintContext -> IO ()gi-gtk4 GI.Gtk.Interfaces.PrintOperationPreview The ready signal gets emitted once per preview operation, before the first page is rendered. A handler for this signal can be used for setup tasks.
module GI.Gtk.Objects.
PrintContext A GtkPrintContext encapsulates context information that is required when drawing pages for printing. This includes the cairo context and important parameters like page size and resolution. It also lets you easily create Layout and Context objects that match the font metrics of the cairo surface. GtkPrintContext objects get passed to the PrintOperation::beginPrint, PrintOperation::endPrint, PrintOperation::requestPageSetup and PrintOperation::drawPage signals on the PrintOperation object.
Using GtkPrintContext in a drawPage callback
c code
static void draw_page (GtkPrintOperation *operation, GtkPrintContext *context, int page_nr) { cairo_t *cr; PangoLayout *layout; PangoFontDescription *desc; cr = gtk_print_context_get_cairo_context (context); // Draw a red rectangle, as wide as the paper (inside the margins) cairo_set_source_rgb (cr, 1.0, 0, 0); cairo_rectangle (cr, 0, 0, gtk_print_context_get_width (context), 50); cairo_fill (cr); // Draw some lines cairo_move_to (cr, 20, 10); cairo_line_to (cr, 40, 20); cairo_arc (cr, 60, 60, 20, 0, M_PI); cairo_line_to (cr, 80, 20); cairo_set_source_rgb (cr, 0, 0, 0); cairo_set_line_width (cr, 5); cairo_set_line_cap (cr, CAIRO_LINE_CAP_ROUND); cairo_set_line_join (cr, CAIRO_LINE_JOIN_ROUND); cairo_stroke (cr); // Draw some text layout = gtk_print_context_create_pango_layout (context); pango_layout_set_text (layout, "Hello World! Printing is easy", -1); desc = pango_font_description_from_string ("sans 28"); pango_layout_set_font_description (layout, desc); pango_font_description_free (desc); cairo_move_to (cr, 30, 20); pango_cairo_layout_path (cr, layout); // Font Outline cairo_set_source_rgb (cr, 0.93, 1.0, 0.47); cairo_set_line_width (cr, 0.5); cairo_stroke_preserve (cr); // Font Fill cairo_set_source_rgb (cr, 0, 0.0, 1.0); cairo_fill (cr); g_object_unref (layout); }-
gi-gtk4 GI.Gtk.Objects.PrintContext Memory-managed wrapper type.
PrintContext :: ManagedPtr PrintContext -> PrintContextgi-gtk4 GI.Gtk.Objects.PrintContext No documentation available.
module GI.Gtk.Objects.
PrintDialog A GtkPrintDialog object collects the arguments that are needed to present a print dialog to the user, such as a title for the dialog and whether it should be modal. The dialog is shown with the printDialogSetup function. The actual printing can be done with printDialogPrint or printDialogPrintFile. These APIs follows the GIO async pattern, and the results can be obtained by calling the corresponding finish methods. Since: 4.14
-
gi-gtk4 GI.Gtk.Objects.PrintDialog Memory-managed wrapper type.