12.07.2015 Views

Xlib − C Language X Interface

Xlib − C Language X Interface

Xlib − C Language X Interface

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Xlib</strong> − C LibraryX11, Release 6.7 DRAFTThe height is:overall-widthfont-ascent + font-descentThe overall-width, font-ascent, and font-descent are as would be returned by XQueryTextExtentsusing gc and string. The function and fill-style defined in the GC are ignored for thesefunctions. The effective function is GXcopy, and the effective fill-style is FillSolid.For fonts defined with 2-byte matrix indexing and used with XDrawImageString, each byte isused as a byte2 with a byte1 of zero.Both functions use these GC components: plane-mask, foreground, background, font, subwindow-mode,clip-x-origin, clip-y-origin, and clip-mask.XDrawImageString and XDrawImageString16 can generate BadDrawable, BadGC, andBadMatch errors.8.7. Transferring Images between Client and Server<strong>Xlib</strong> provides functions that you can use to transfer images between a client and the server.Because the server may require diverse data formats, <strong>Xlib</strong> provides an image object that fullydescribes the data in memory and that provides for basic operations on that data. Youshould referencethe data through the image object rather than referencing the data directly. However, someimplementations of the <strong>Xlib</strong> library may efficiently deal with frequently used data formats byreplacing functions in the procedure vector with special case functions. Supported operationsinclude destroying the image, getting a pixel, storing a pixel, extracting a subimage of an image,and adding a constant to an image (see section 16.8).All the image manipulation functions discussed in this section make use of the XImage structure,which describes an image as it exists in the client’s memory.178

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!