1 /* Copyright (C) 1997 Aladdin Enterprises. All rights reserved. 2 3 This software is provided AS-IS with no warranty, either express or 4 implied. 5 6 This software is distributed under license and may not be copied, 7 modified or distributed except as expressly authorized under the terms 8 of the license contained in the file LICENSE in this distribution. 9 10 For more information about licensing, please refer to 11 http://www.ghostscript.com/licensing/. For information on 12 commercial licensing, go to http://www.artifex.com/licensing/ or 13 contact Artifex Software, Inc., 101 Lucas Valley Road #110, 14 San Rafael, CA 94903, U.S.A., +1(415)492-9861. 15 */ 16 17 /* $Id: gxclpage.h,v 1.5 2002/06/16 08:45:43 lpd Exp $ */ 18 /* Command list procedures for saved pages */ 19 /* Requires gdevprn.h, gxclist.h */ 20 21 #ifndef gxclpage_INCLUDED 22 # define gxclpage_INCLUDED 23 24 #include "gxclio.h" 25 26 /* ---------------- Procedures ---------------- */ 27 28 /* 29 * Package up the current page in a banding device as a page object. 30 * The client must provide storage for the page object. 31 * The client may retain the object in memory, or may write it on a file 32 * for later retrieval; in the latter case, the client should free the 33 * in-memory structure. 34 */ 35 int gdev_prn_save_page(gx_device_printer * pdev, gx_saved_page * page, 36 int num_copies); 37 38 /* 39 * Render an array of saved pages by setting up a modified get_bits 40 * procedure and then calling the device's normal output_page procedure. 41 * Any current page in the device's buffers is lost. 42 * The (0,0) point of each saved page is translated to the corresponding 43 * specified offset on the combined page. (Currently the Y offset must be 0.) 44 * The client is responsible for freeing the saved and placed pages. 45 * 46 * Note that the device instance for rendering need not be, and normally is 47 * not, the same as the device from which the pages were saved, but it must 48 * be an instance of the same device. The client is responsible for 49 * ensuring that the rendering device's buffer size (BufferSpace value) is 50 * the same as the BandBufferSpace value of all the saved pages, and that 51 * the device width is the same as the BandWidth value of the saved pages. 52 */ 53 int gdev_prn_render_pages(gx_device_printer * pdev, 54 const gx_placed_page * ppages, int count); 55 56 #endif /* gxclpage_INCLUDED */ 57