Windows PowerShell command on Get-command libXp
MyWebUniversity

Manual Pages for UNIX Operating System command usage for man libXp

XPRINT FUNCTIONS libXp(3Xp)

NAME

libXp - X Print Client Library

SYNOPSIS

cc [ flag... ] file... -lXp [ library... ]

cc [ flag... ] file...-lXp [ library... ]

#include

DESCRIPTION

libXp provides public APIs to allow client applications to

render to non-display devices.

When an application wishes to print, it makes a display con-

nection to the X print server and asks to see the list of printers available with an XpGetPrinterList() request. Once the application has selected a printer, it creates and sets a print context using XpCreateContext() and XpSetContext(). The Print Context represents the embodiment of the printer selected. It is initialized by the Xprint server at

XpCreateContext() time to contain a printer's default capa-

bilities, as well as, the description of its overall capa-

bilties, and to maintain the state of settings on the printer, the state of rendering against the printer, and the rendered output. The Print Context affects how the DDX driver generates its page description language (PDL) and how the PDL is submitted to a spooler. The print context may also affect fonts and other elements in the dix layer of the X Print Server. The print contexts can be shared among processes. Applications can enlist the help of secondary processes to manipulate print options in the Print context rather than taking on the task directly.

Once an application has set options within the print con-

text, it makes calls such as XpStartJob() to delineate jobs, documents, and pages within a sequence of normal X calls. A job is a collection of documents, where each document is in turn a collection of pages. When XpEndJob() is called, the resulting PDL is either sent to a print spooler or can be retrieved by the application itself.

The developer basically has to make changes to the X appli-

cation to make use of the X Print Service.

A simple X application supplemented with some of the libXp

routines might look like this:

X Version 11 Last change: libXp 1.0.0 1

XPRINT FUNCTIONS libXp(3Xp)

#include

#include

main() { Display *pdpy; Screen *pscreen; Window pwin; XPPrinterList plist; XPContext pcontext; int plistCnt; char *attrPool;

#define NPOOLTYPES 5

XPAttributes poolType[NPOOLTYPES] = {XPJobAttr,XPDocAttr,XPPageAttr, XPPrinterAttr,XPServerAttr}; int i; unsigned short width, height; XRectangle rect; char *printServerName = ":1"; char *mylaser = "varos"; /* * connect to the X print server */ pdpy = XOpenDisplay( printServerName ); /* * see if the printer "mylaser" is available */ plist = XpGetPrinterList (pdpy, mylaser, &plistCnt ); /* * Initialize a print context representing "mylaser" */ pcontext = XpCreateContext( pdpy, plist[0].name ); XpFreePrinterList( plist ); /* * Possibly modify attributes in the print context */ for(i=0;i < NPOOLTYPES;i++) { if(attrPool = XpGetAttributes( pdpy, pcontext, poolType[i] )) { /* twiddle attributes */ /* XpSetAttributes( pdpy, pcontext, poolType[i], attrPool, XPAttrMerge ); */ XFree(attrPool); } }

X Version 11 Last change: libXp 1.0.0 2

XPRINT FUNCTIONS libXp(3Xp)

/* * Set a print server, then start a print job against it */ XpSetContext( pdpy, pcontext ); XpStartJob( pdpy, XPSpool ); /* * Generate the first page */ pscreen = XpGetScreenOfContext( pdpy, pcontext ); XpGetPageDimensions( pdpy, pcontext, &width, &height, &rect); pwin = XCreateSimpleWindow( pdpy, RootWindowOfScreen( pscreen ), rect.x, rect.y, rect.width, rect.height, 2, BlackPixelOfScreen( pscreen), WhitePixelOfScreen( pscreen)); XpStartPage( pdpy, pwin ); /* usual rendering stuff..... */ XpEndPage( pdpy ); XpStartPage( pdpy, pwin ); /* some more rendering..... */ XpEndPage( pdpy ); /*

* End the print job - the final results are sent by the X print

* server to the spooler sub system. */ XpEndJob( pdpy ); XpDestroyContext( pdpy, pcontext ); XCloseDisplay( pdpy ); }

SEE ALSO

Xprt(1), XpCreateContext(3Xp), XpDestroyContext(3Xp), XpEndJob(3Xp), XpEndPage(3Xp), XpFreePrinterList(3Xp), XpGetAttributes(3Xp), XpGetPageDimensions(3Xp), XpGetPrinterList(3Xp), XpSetAttributes(3Xp), XpSetContext(3Xp), XpStartJob(3Xp), XpStartPage(3Xp) X Print Service Extension Library

ATTRIBUTES

See attributes(5) for descriptions of the following attri-

butes:

X Version 11 Last change: libXp 1.0.0 3

XPRINT FUNCTIONS libXp(3Xp)

____________________________________________________________

| ATTRIBUTE TYPE | ATTRIBUTE VALUE |

|_____________________________|_____________________________|

| Availability | x11/library/libxp |

|_____________________________|_____________________________|

| Interface Stability | Committed |

|_____________________________|_____________________________|

| MT-Level | See XInitThreads(3X11) |

|_____________________________|_____________________________|

X Version 11 Last change: libXp 1.0.0 4




Contact us      |      About us      |      Term of use      |       Copyright © 2000-2019 MyWebUniversity.com ™