The Print API supports various types of printing and publishing applications.
More...
The Print API supports various types of printing and publishing applications.
The intended types of consumer include:
-
Single-page print submittal, a la the single-Print dialog (plotdlg)
-
Print accounting and simple print event handlers
-
Print resymbolization and advanced print event handlers
-
Printer drivers
Multi-page print submittal, a la Print Organizer, is accomplished using the managed Bentley.MstnPlatformNET.Print API. There is no native code API for multi-page print submittal.
In most cases, the public Print API is accessed using "#include <Mstn/Plot/PlotApi.h>". Typically no other printing system header files should be directly included.
The following terms are used when describing the printing system:
-
Printer driver configuration file: A .pltcfg or .plt file that defines properties for a particular printer driver. There is a one-to-many relationship between printer driver configuration files and printer drivers. For example, the user may create two custom versions of pdf.pltcfg (one 300 DPI, the other 600 DPI) that are both used in conjunction with the sole PDF printer driver. The contents of the printer driver configuration file may affect the behavior of the print engine, the printer driver, and the print submittal application.
-
Printer driver: A native-code DLL responsible for translating graphics output by the print engine into commands appropriate for a particular plotter language or output file format. When printing using printer.pltcfg, the system printer driver translates print engine graphics into Windows GDI calls, which are then processed by Windows and sent to a different Windows printer driver (typically provided by the plotter vendor) for output.
-
Printer: An abstraction for both the in-memory contents of the printer driver configuration file and the corresponding printer driver. Plus, if appropriate, the Windows printer and its driver.
-
Print definition: A collection of printing parameters corresponding to a single source file (i.e. a DGN or DWG). Print definitions come in two main flavors: "fixed" and "variable". For CAD source files, a "fixed" print definition always represents a single printed page and is tightly bound to its corresponding source file. The contents of the Print dialog (plotdlg) can be considered to represent a single fixed print definition. A "variable" print definition is loosely coupled with its corresponding source file and may represent one or more printed pages. A "variable" print definitions is also sometimes internally referred to as a "query" print definition.
-
Print set: A collection of print definitions, a printer, and various other properties that make up a PSET file. A print set may consist of either fixed or variable print definitions, or a mix of both. Source file types may include CAD (DGN or DWG), Raster, and PDF. The Print Organizer application manipulates print sets.
-
Print style: A named collection of print settings that may applied to print definitions and/or a print set. Print styles are typically stored in DGNLIBs. A print style may contain both settings intended for individual print definitions, i.e. size and scale, as well as common settings that affect the entire print set, i.e. the printer driver configuration file. Fixed print definitions retain no memory of print styles; when applied, the settings specified in the print style override and change the parameters defined in the print definition. The print style is then forgotten. Variable print definitions do retain the print style; in fact, variable print definitions contain no parameters other than the source file name and print style name. Like fixed print definitions, the common section of a print set retains no memory of print styles that have been applied.
-
Print resymbolization: Changing the printed appearance of an element from how it displays in the view. Typically involves changing only the symbology, e.g. color, weight, and style, but also covers actions such as skipping elements, rescaling them, resorting them, replacing text characters, etc. Resymbolization is normally performed via a pen table or design script file, but may also be accomplished using a custom print event handler.