A guide to using PandaMichaelStill2002Michael Still
Introduction
Panda is a PDF generation API developed by Michael Still. It is released under the terms of the GNU GPL, which might affect your commerical use of this product. Please check the file labelled COPYING in the source distribution before relying on this product for your commercial activities.
...more content here...
libpngDummyFlushProc.sgml
libpngDummyFlushProc
3
libpngDummyFlushProc
mangle libpng to do image conversion in memory without temportary files
void libpngDummyFlushProc(png_structp png);
DESCRIPTION
PANDA INTERNAL. This call implements a dummy flush proceedure for libpng. This is needed so that Panda can get at the compressed PNG data, whilst converting it on the fly from unsupported PNG variants, and while not having to deal with temporary files. PDF documents only need the content of the IDAT chunks within the PNG file, and this method eases gaining access to those chunks.
RETURNS
Zero
EXAMPLE
ee panda_insertPNG for an example usage
SEE ALSO
panda_insertPNG, libpngDummyReadProc, libpngDummyWriteProc
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
libpngDummyWriteProc.sgml
libpngDummyWriteProc
3
libpngDummyWriteProc
mangle libpng to do image conversion in memory without temportary files
void libpngDummyWriteProc(png_structp png, png_bytep data, png_uint_32 len);
DESCRIPTION
PANDA INTERNAL. This call implements a dummy write proceedure for libpng. This is needed so that Panda can get at the compressed PNG data, whilst converting it on the fly from unsupported PNG variants, and while not having to deal with temporary files. PDF documents only need the content of the IDAT chunks within the PNG file, and this method eases gaining access to those chunks.
RETURNS
Zero
EXAMPLE
ee panda_insertPNG for an example usage
SEE ALSO
panda_insertPNG, libpngDummyReadProc, libpngDummyFlushProc
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
libtiffDummyCloseProc.sgml
libtiffDummyCloseProc
3
libtiffDummyCloseProc
mangle libtiff to do image conversion in memory without temportary files
static int libtiffDummyCloseProc (thandle_t);
DESCRIPTION
PANDA INTERNAL. This call implements a dummy close procedure for libtiff to allow for the conversion of TIFF images on the fly in memory without the use of temporary files. It is an internal call and should NEVER be called by users of the API.
RETURNS
Zero
EXAMPLE
ee panda_insertTIFF for an example usage
SEE ALSO
panda_insertTIFF, libtiffDummWriteProc
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
libtiffDummyReadProc.sgml
libtiffDummyReadProc
3
libtiffDummyReadProc
mangle libtiff to do image conversion in memory without temportary files
static tsize_t libtiffDummyReadProc (thandle_t fd, tdata_t buf, tsize_t size);
DESCRIPTION
PANDA INTERNAL. This call implements a dummy read procedure for libtiff to allow for the conversion of TIFF images on the fly in memory without the use of temporary files. It is an internal call and should NEVER be called by users of the API.
RETURNS
The amount of data read
EXAMPLE
ee panda_insertTIFF for an example usage
SEE ALSO
panda_insertTIFF, libtiffDummWriteProc
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
libtiffDummySeekProc.sgml
libtiffDummySeekProc
3
libtiffDummySeekProc
mangle libtiff to doc image conversion in memory without temportary files
static toff_t libtiffDummySeekProc (thandle_t, toff_t off, int i);
DESCRIPTION
PANDA INTERNAL. This call implements a dummy seek procedure for libtiff to allow for the conversion of TIFF images on the fly in memory without the use of temporary files. It is an internal call and should NEVER be called by users of the API.
RETURNS
Where the seek took us to
EXAMPLE
ee panda_insertTIFF for an example usage
SEE ALSO
panda_insertTIFF, libtiffDummWriteProc
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
libtiffDummyWriteProc.sgml
libtiffDummyWriteProc
3
libtiffDummyWriteProc
mangle libtiff to do image conversion in memory without temportary files
static tsize_t libtiffDummyWriteProc (thandle_t fd, tdata_t buf, tsize_t size);
DESCRIPTION
PANDA INTERNAL. This call implements a dummy write procedure for libtiff to allow for the conversion of TIFF images on the fly in memory without the use of temporary files. It is an internal call and should NEVER be called by users of the API.
RETURNS
The amount of daat written
EXAMPLE
ee panda_insertTIFF for an example usage
SEE ALSO
panda_insertTIFF, libtiffDummWriteProc
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_addchild.sgml
panda_addchild
3
panda_addchild
add an object to the object tree
#include<panda/constants.h>
#include<panda/functions.h>
void panda_addchild (panda_object *parent, panda_object *child);
DESCRIPTION
PANDA INTERNAL. Once an object has been created with panda_newobject() it is added to the object tree with this call. This ensures it is written out to disc via panda_writeobject() when panda_close() is called.
RETURNS
None
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_object *obj, *obj2;
panda_init();
document = panda_open("filename.pdf", "w");
obj = panda_newobject(document, panda_object_normal);
obj2 = panda_newobject(document, panda_object_normal);
panda_addhild(obj, obj2);
SEE ALSO
panda_newobject, panda_freeobject, panda_writeobject, panda_traverseobjects
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_addcubiccurvesegment.sgml
panda_addcubiccurvesegment
3
panda_addcubiccurvesegment
add a curved segment to the line shape we are drawing
#include<panda/constants.h>
#include<panda/functions.h>
void panda_addcubiccurvesegment (panda_page * target, int x, int y, int cx1, int cy1, int cx2, int cy2);
DESCRIPTION
Add a point to the shape we are currently drawing with a cubic curve between the current cursor location and (x,y). There are two control points used to generate the cubic curve. They are (cx1, cy1) and (cx2, cy2).
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
panda_setlinestart (currPage, 210, 210);
panda_addcubiccurvesegment (currPage, 310, 210, 225, 300, 275, 400);
SEE ALSO
panda_setlinestart, panda_addlinesegment, panda_addquadraticsegmentone, panda_addquadraticcurvesegmenttwo, panda_closeline, panda_rectangle, panda_endline, panda_strokeline, panda_fillline, panda_setlinewidth, panda_setlinecap, panda_setlinejoin, panda_setlinedash, panda_setfillcolor, panda_setlinecolor
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_addlinesegment.sgml
panda_addlinesegment
3
panda_addlinesegment
add a straight segment to the line shape we are drawing
#include<panda/constants.h>
#include<panda/functions.h>
void panda_addlinesegment (panda_page * target, int x, int y);
DESCRIPTION
Add a point to the shape we are currently drawing with a straight line between the current cursor location and (x,y).
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
panda_setlinestart (page, 100, 200);
panda_addlinesegment (page, 200, 200);
SEE ALSO
panda_setlinestart, panda_addcubiccurvesegment, panda_addquadraticsegmentone, panda_addquadraticcurvesegmenttwo, panda_closeline, panda_rectangle, panda_endline, panda_strokeline, panda_fillline, panda_setlinewidth, panda_setlinecap, panda_setlinejoin, panda_setlinedash, panda_setfillcolor, panda_setlinecolor
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_addquadraticcurvesegmentone.sgml
panda_addquadraticcurvesegmentone
3
panda_addquadraticcurvesegmentone
add a curved segment to the line shape that we are drawing
#include<panda/constants.h>
#include<panda/functions.h>
void panda_addquadraticcurvesegmentone (panda_page * target, int x, int y, int cx1, int cy1);
DESCRIPTION
This function adds a curved segment to the line shape that we are drawing. The curved segment has a control point, namely (cx1, cy1). This call creates slightly different curves from panda_addquadraticcurvesegmenttwo();
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
panda_setlinestart (page, 100, 200);
panda_addquadraticcurvesegmentone (page, 200, 200, 12, 32);
SEE ALSO
panda_setlinestart, panda_addlinesegment, panda_addcubiccurvesegment, panda_addquadraticcurvesegmenttwo, panda_closeline, panda_rectangle, panda_endline, panda_strokeline, panda_fillline, panda_setlinewidth, panda_setlinecap, panda_setlinejoin, panda_setlinedash, panda_setfillcolor, panda_setlinecolor
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_addquadraticcurvesegmenttwo.sgml
panda_addquadraticcurvesegmenttwo
3
panda_addquadraticcurvesegmenttwo
add a curved segment to the line shape that we are drawing
#include<panda/constants.h>
#include<panda/functions.h>
void panda_addquadraticcurvesegmenttwo (panda_page * target, int x, int y, int cx1, int cy1);
DESCRIPTION
This function adds a curved segment to the line shape that we are drawing. The curved segment has a control point, namely (cx1, cy1). This call creates slightly different curves from panda_addquadraticcurvesegmentone();
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
panda_setlinestart (page, 100, 200);
panda_addquadraticcurvesegmenttwo (page, 200, 200, 12, 32);
SEE ALSO
panda_setlinestart, panda_addlinesegment, panda_addcubiccurvesegment, panda_addquadraticcurvesegmenttwo, panda_closeline, panda_rectangle, panda_endline, panda_strokeline, panda_fillline, panda_setlinewidth, panda_setlinecap, panda_setlinejoin, panda_setlinedash, panda_setfillcolor, panda_setlinecolor
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_applytemplate.sgml
panda_applytemplate
3
panda_applytemplate
use a template page previously created
#include<panda/constants.h>
#include<panda/functions.h>
void panda_applytemplate (panda_pdf * output, panda_page * target,
panda_page * template)
DESCRIPTION
This function is used to use a template created with the panda_newtemplate function call.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *templatepage, *realpage;
panda_init();
document = panda_open("filename.pdf", "w");
templatepage = panda_newtemplate (document, panda_pagesize_a4);
realpage = panda_newpage (document, panda_pagesize_a4);
... the order of the drawing commands to the two pages doesn't matter ...
panda_applytemplate(document, realpage, templatepage);
SEE ALSO
panda_newpage, panda_newtemplate
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_centerwindow.sgml
panda_centerwindow
3
panda_centerwindow
ask the viewer to center the document's window on the screen when the PDF is displayed
#include<panda/constants.h>
#include<panda/functions.h>
void panda_centerwindow (panda_pdf *document, int onoroff);
DESCRIPTION
This function records information in the output PDF document requesting that the viewing application center the displayed PDF document on the screen when it is opened. This option is not supported by all viewers, and therefore should not be relied upon. The on or off arguement is a panda_true value, which does the obvious thing. The default is to not center the window.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_init();
document = panda_open("filename.pdf", "w");
panda_centerwindow(document, panda_true);
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_checkinfo.sgml
panda_checkinfo
3
panda_checkinfo
ensure an info object exists
#include<panda/constants.h>
#include<panda/functions.h>
void panda_checkinfo (panda_pdf *output);
DESCRIPTION
PANDA INTERNAL. This function call ensures that the info object exists inside the PDF document so that information may be safely added. This function call is unlikely to be needed by users of the API because it is used whenever one of the info object functions is called by the Panda code itself.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_init();
document = panda_open("filename.pdf", "w");
panda_checkinfo(document);
SEE ALSO
panda_setauthor, panda_setcreator, panda_settitle, panda_setsubject, panda_setkeywords
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_closeline.sgml
panda_closeline
3
panda_closeline
close off the line shape we are drawing
#include<panda/constants.h>
#include<panda/functions.h>
void panda_closeline(panda_page * target);
DESCRIPTION
Close the line shape we are drawing by returning to the starting point as set by panda_setlinestart();
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
panda_setlinestart (page, 100, 200);
panda_addlinesegment (page, 200, 200);
panda_addlinesegment (page, 400, 300);
panda_closeline (page);
SEE ALSO
panda_setlinestart, panda_addlinesegment, panda_addcubiccurvesegment, panda_addquadraticsegmentone, panda_addquadraticcurvesegmenttwo, panda_rectangle, panda_endline, panda_strokeline, panda_fillline, panda_setlinewidth, panda_setlinecap, panda_setlinejoin, panda_setlinedash, panda_setfillcolor, panda_setlinecolor
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_close.sgml
panda_close
3
panda_close
write a PDF document out to disk
#include<panda/constants.h>
#include<panda/functions.h>
void panda_close (panda_pdf *document);
DESCRIPTION
Write out the PDF document we have created to disk, clean up and free memory.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
panda_close(document);
SEE ALSO
panda_open
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_closetext.sgml
panda_closetext
3
panda_closetext
a traversal callback used for closing text streams within the PDF
#include<panda/constants.h>
#include<panda/functions.h>
void panda_closetext(panda_pdf *document, panda_object *victim);
DESCRIPTION
PANDA INTERNAL. This function is called by the panda_traverseobjects() function to write out streams attached to objects when panda_close() call. You shouldn't need to ever call this function.
RETURNS
Nothing
EXAMPLE
ou shouldn't need to use this function.
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_createandinsertpage.sgml
panda_createandinsertpage
3
panda_createandinsertpage
create a page within the PDF document
#include<panda/constants.h>
#include<panda/functions.h>
void panda_createandinsertpage (panda_pdf *output);
DESCRIPTION
PANDA INTERNAL. This function creates the objects required for a page to exist within Panda. This function is wrappered by other Panda function calls.
RETURNS
A pointer to a panda_page object
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_createandinsertpage(document);
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_createfont.sgml
panda_createfont
3
panda_createfont
return a handle to the requested font
#include<panda/constants.h>
#include<panda/functions.h>
char * panda_createfont (panda_pdf * output, char *fontname, int type, char *encoding)
DESCRIPTION
PANDA INTERNAL. This funtion call creates a font object for the requested font and returns the identifier that should be used when the font is set within the PDF document.
RETURNS
A font identifier (handle) as a null terminated string.
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *output;
char *fonthandle;
panda_init();
output = panda_open("output.pdf", "w");
fonthandle = (output, "Helventica", 3, "MacRomanEncoding");
SEE ALSO
panda_setfont
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_dbclose.sgml
panda_dbclose
3
panda_dbclose
finalize the use of the Panda internal database
#include<panda/constants.h>
#include<panda/functions.h>
void panda_dbclose(panda_pdf *document);
DESCRIPTION
PANDA INTERNAL. This command closes the TDB database which is used to store information about things like dictionary items which have been created in the document. The use of this database makes Panda much more reliable than it has previously been.
RETURNS
Nothing
EXAMPLE
here is no examples for this internal call
SEE ALSO
panda_dbopen, panda_dbwrite, panda_dbread
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_dbopen.sgml
panda_dbopen
3
panda_dbopen
prepare the Panda internal database for use
#include<panda/constants.h>
#include<panda/functions.h>
void panda_dbopen(panda_pdf *document);
DESCRIPTION
PANDA INTERNAL. This command opens the TDB database which is used to store information about things like dictionary items which have been created in the document. The use of this database makes Panda much more reliable than it has previously been.
RETURNS
Nothing
EXAMPLE
here is no examples for this internal call
SEE ALSO
panda_dbclose, panda_dbwrite, panda_dbread
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_dbread.sgml
panda_dbread
3
panda_dbread
read a value from the Panda internal database
#include<panda/constants.h>
#include<panda/functions.h>
char *panda_dbread(panda_pdf *document, char *key);
DESCRIPTION
PANDA INTERNAL. This function reads a value from the Panda internal database.
RETURNS
The value, or NULL if there is no value.
EXAMPLE
here is no examples for this internal call
SEE ALSO
panda_dbopen, panda_dbclose, panda_dbread
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_dbwrite.sgml
panda_dbwrite
3
panda_dbwrite
write a value into the Panda internal database
#include<panda/constants.h>
#include<panda/functions.h>
void panda_dbwrite(panda_pdf *document, char *key, char *value);
DESCRIPTION
PANDA INTERNAL. This function write a value into the Panda internal database.
RETURNS
Nothing
EXAMPLE
here is no examples for this internal call
SEE ALSO
panda_dbopen, panda_dbclose, panda_dbread
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_endline.sgml
panda_endline
3
panda_endline
finalise the current line shape
#include<panda/constants.h>
#include<panda/functions.h>
void panda_endline( panda_page *target);
DESCRIPTION
Finalise the line shape we are drawing. Only one line shape may be drawn at any one time. There is no need for this call with the panda_rectangle() call.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
panda_setlinestart (page, 100, 200);
panda_addlinesegment (page, 200, 200);
panda_endline (page);
SEE ALSO
panda_setlinestart, panda_addlinesegment, panda_addcubiccurvesegment, panda_addquadraticsegmentone, panda_addquadraticcurvesegmenttwo, panda_closeline, panda_rectangle, panda_strokeline, panda_fillline, panda_setlinewidth, panda_setlinecap, panda_setlinejoin, panda_setlinedash, panda_setfillcolor, panda_setlinecolor
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_entergraphicsmode.sgml
panda_entergraphicsmode
3
panda_entergraphicsmode
make sure the page description stream is in graphics mode
#include<panda/constants.h>
#include<panda/functions.h>
void panda_entergraphicsmode (panda_page * target);
DESCRIPTION
PANDA INTERNAL. PDF pages are described with a text stream full of commands. Many of these commands are similar to those used within Postscript. This function call ensures that the text stream is in a graphics state.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
panda_entergraphicsmode (page);
SEE ALSO
panda_exitgraphicsmode
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_error.sgml
panda_error
3
panda_error
handle a Panda error
#include<panda/constants.h>
#include<panda/functions.h>
void panda_error (int fatal, char *msg);
DESCRIPTION
Print out the error message to stderr and then exit (if fatal is panda_true).
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_error ("All is rotten in the state of Denmark");
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_exitgraphicsmode.sgml
panda_exitgraphicsmode
3
panda_exitgraphicsmode
make sure the page description stream is out of graphics mode
#include<panda/constants.h>
#include<panda/functions.h>
void panda_exitgraphicsmode (panda_page * target);
DESCRIPTION
PANDA INTERNAL. PDF pages are described with a text stream full of commands. Many of these commands are similar to those used within Postscript. This function call ensures that the text stream is not in a graphics state.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
panda_entergraphicsmode (page);
...
panda_exitgraphicsmode (page);
SEE ALSO
panda_entergraphicsmode
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_fillline.sgml
panda_fillline
3
panda_fillline
fill the closed shape we just drew
#include<panda/constants.h>
#include<panda/functions.h>
void panda_fillline (panda_page * target);
DESCRIPTION
Fill the shape we have just drawn with the previously defined fill.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
panda_setlinestart (page, 100, 200);
panda_addlinesegment (page, 200, 200);
panda_addlinesegment (page, 250, 250);
panda_endline (page);
panda_fillline (page);
SEE ALSO
panda_setlinestart, panda_addlinesegment, panda_addcubiccurvesegment, panda_addquadraticsegmentone, panda_addquadraticcurvesegmenttwo, panda_closeline, panda_rectangle, panda_endline, panda_strokeline, panda_setlinewidth, panda_setlinecap, panda_setlinejoin, panda_setlinedash, panda_setfillcolor, panda_setlinecolor
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_fitwindow.sgml
panda_fitwindow
3
panda_fitwindow
ask the viewer to fit the viewer window to the first page of the PDF document when it is opened
#include<panda/constants.h>
#include<panda/functions.h>
void panda_fitwindow (panda_pdf *document, int onoroff);
DESCRIPTION
This function records information in the output PDF document requesting that the viewing application fit the display window to the first page of the PDF document when it is opened. This option is not supported by all viewers, and therefore should not be relied upon. The on or off arguement is a panda_true value, which does the obvious thing. The default is to not fit the document to the window.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_init();
document = panda_open("filename.pdf", "w");
panda_fitwindow(document, panda_true);
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_freeobject.sgml
panda_freeobject
3
panda_freeobject
free the memory used by a previously created object
#include<panda/constants.h>
#include<panda/functions.h>
void panda_freeobject (panda_pdf *output, panda_object *);
DESCRIPTION
PANDA INTERNAL. This function call frees the memory used by an object. It is used during the cleanup process prior to finishing closing a PDF document. Even if a user of the API has added object types to their code, they should not have to call this function, as their objects should be added to the object tree via panda_addchild() to ensure they are written to disc by panda_writeobject() having been traversed by panda_traverseobjects() at PDF close time.
RETURNS
None
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_object *obj;
panda_init();
document = panda_open("filename.pdf", "w");
obj = panda_newobject(document, panda_object_normal);
panda_freeobject(document, obj)l
SEE ALSO
panda_newobject, panda_writeobject, panda_traverseobjects, panda_addchild
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_freetextannotation.sgml
panda_freetextannotation
3
panda_freetextannotation
draw a text annotation which doesn't look like a sticky note onto a page
#include<panda/constants.h>
#include<panda/functions.h>
void panda_freetextannotation(panda_pdf *document, panda_page *page,
char *text, int top, int left, int bottom, int right,
int flags);
DESCRIPTION
This function inserts a text annotation onto one of the pages in your PDF document. The possible values for the flags arguement are: panda_annotationflag_invisible; panda_annotationflag_hidden; panda_annotationflag_print; panda_annotationflag_nozoom; panda_annotationflag_norotate; panda_annotationflag_noview; panda_annotationflag_readonly -- the values for this arguement may by OR'ed together if needed.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *demo;
panda_page *currPage;
panda_init();
if ((demo = panda_open ("output.pdf", "w")) == NULL)
panda_error (panda_true, "demo: could not open output.pdf to write to.");
currPage = panda_newpage (demo, panda_pagesize_a4);
panda_freetextannotation(demo, currPage, "Hello", 10, 10, 50, 50, 0);
SEE ALSO
panda_textannotation, panda_insertannotation
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_fullscreen.sgml
panda_fullscreen
3
panda_fullscreen
ask the viewer to display the PDF document in fullscreen mode
#include<panda/constants.h>
#include<panda/functions.h>
void panda_fullscreen (panda_pdf *document, int onoroff);
DESCRIPTION
This function records information in the output PDF document requesting that the viewing application display the document in full screen mode. This option is not supported by all viewers, and therefore should not be relied upon. The on or off arguement is a panda_true value, which does the obvious thing. The default is to not display the PDF in fullscreen mode.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_init();
document = panda_open("filename.pdf", "w");
panda_fullscreen(document, panda_true);
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_getfontobj.sgml
panda_getfontobj
3
panda_getfontobj
get the object that the named font is stored in
#include<panda/constants.h>
#include<panda/functions.h>
void panda_getfontobj (panda_pdf *output, char *fontident);
DESCRIPTION
PANDA INTERNAL. This function is used to map a font identifier handed to Panda by a user to the object that actually stores the font requested. This is because the PDF specification actually wants a reference to this object, instead of merely the name of the font.
RETURNS
The font object
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *output;
panda_init();
output = panda_open("output.pdf", "w");
fonthandle = panda_createfont (output, "Helventica", 3, "MacRomanEncoding");
printf("The font was stored in object number %d\n",
(panda_getfont (output, fonthandle))->number);
SEE ALSO
panda_createfont
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_hidemenubar.sgml
panda_hidemenubar
3
panda_hidemenubar
ask the viewer to hide it's menu bar when this PDF is displayed
#include<panda/constants.h>
#include<panda/functions.h>
void panda_hidemenubar (panda_pdf *document, int onoroff);
DESCRIPTION
This function records information in the output PDF document requesting that the viewing application's menu bar not be displayed when this PDF is opened. This option is not supported by all viewers, and therefore should not be relied upon. The on or off arguement is a panda_true value, which does the obvious thing. The default is to show the menu bar.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_init();
document = panda_open("filename.pdf", "w");
panda_hidemenubar(document, panda_true);
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_hidetoolbar.sgml
panda_hidetoolbar
3
panda_hidetoolbar
ask the viewer to hide it's tool bar when this PDF is displayed
#include<panda/constants.h>
#include<panda/functions.h>
void panda_hidetoolbar (panda_pdf *document, int onoroff);
DESCRIPTION
This function records information in the output PDF document requesting that the viewing application's tool bar not be displayed when this PDF is opened. This option is not supported by all viewers, and therefore should not be relied upon. The on or off arguement is a panda_true value, which does the obvious thing. The default is to show the tool bar.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_init();
document = panda_open("filename.pdf", "w");
panda_hidetoolbar(document, panda_true);
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_hidewindowui.sgml
panda_hidewindowui
3
panda_hidewindowui
ask the viewer to hide it's display window user interface when this PDF is displayed
#include<panda/constants.h>
#include<panda/functions.h>
void panda_hidewindowui (panda_pdf *document, int onoroff);
DESCRIPTION
This function records information in the output PDF document requesting that the viewing application's window user interface not be displayed when this PDF is opened. This option is not supported by all viewers, and therefore should not be relied upon. The on or off arguement is a panda_true value, which does the obvious thing. The default is to display the user interface.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_init();
document = panda_open("filename.pdf", "w");
panda_hidewindowui(document, panda_true);
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_imageboxrot.sgml
panda_imageboxrot
3
panda_imageboxrot
insert an image into the PDF document at the specified location
#include<panda/constants.h>
#include<panda/functions.h>
void panda_panda_imageboxrot (panda_pdf * output, panda_page * target, int top, int left, int bottom, int right, double angle, char *filename, int type);
DESCRIPTION
This function call inserts an image into the PDF document at the specified location, including the ability to rotate the image on the page. It should be noted that xpdf will sometimes make the rotated image look quite sickly. This is in fact a bug in xpdf (which has beenr eported), and not a bug in Panda. The image types accepted by this call are: panda_image_tiff, panda_image_jpeg and panda_image_png.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *demo;
panda_page *currPage;
panda_init ();
if ((demo = panda_open ("output.pdf", "w")) == NULL)
panda_error (panda_true, "demo: could not open output.pdf to write to.");
currPage = panda_newpage (demo, panda_pagesize_a4);
panda_imagebox (demo, currPage, 0, 0, currPage->height / 2,
currPage->width, 45.0, "input.tif", panda_image_tiff);
SEE ALSO
panda_imagebox
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_imagebox.sgml
panda_imagebox
3
panda_imagebox
insert an image into the PDF document at the specified location
#include<panda/constants.h>
#include<panda/functions.h>
void panda_panda_imagebox (panda_pdf * output, panda_page * target, int top, int left, int bottom, int right, char *filename, int type);
DESCRIPTION
This function call inserts an image into the PDF document at the specified location using a reasonable default for rotation (none). This call is included for backward compatability withprevious releases of the API and it is recommened that new code call panda_imageboxrot(). It is unlikely that this call will be retired however. The image types accepted by this call are: panda_image_tiff, panda_image_jpeg and panda_image_png.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *demo;
panda_page *currPage;
panda_init ();
if ((demo = panda_open ("output.pdf", "w")) == NULL)
panda_error (panda_true, "demo: could not open output.pdf to write to.");
currPage = panda_newpage (demo, panda_pagesize_a4);
panda_imagebox (demo, currPage, 0, 0, currPage->height / 2,
currPage->width, "input.tif", panda_image_tiff);
SEE ALSO
panda_imageboxrot
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_imagesize
.sgml
panda_imagesize
3
panda_imagesize
determine the size of an image
END
DESCRIPTION
This function can be used to determine the size of an image before a panda_imagebox() function call.
RETURNS
Nothing
EXAMPLE
END
SEE ALSO
panda_imagebox, panda_imageboxrot
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_init.sgml
panda_init
3
panda_init
setup Panda ready for use
#include<panda/constants.h>
#include<panda/functions.h>
void panda_init (void);
DESCRIPTION
Performs some simple setup of Panda before it is used for the first time in your application.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_init();
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_insertannotation.sgml
panda_insertannotation
3
panda_insertannotation
actually insert an annotation
#include<panda/constants.h>
#include<panda/functions.h>
panda_object *panda_insertannotation(panda_pdf *document, panda_page *page,
int top, int left, int bottom, int right,
int flags)
DESCRIPTION
PANDA INTERNAL. This function call creates the object to store the annotation and the common elements which are required.
RETURNS
The annotation object which was created.
EXAMPLE
ou shouldn't need an example because this is an internal call
SEE ALSO
panda_textannotation, panda_freetextannotation
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_insertJPEG.sgml
panda_insertJPEG
3
panda_insertJPEG
insert a JPEG image into the PDF
#include<panda/constants.h>
#include<panda/functions.h>
void panda_insertJPEG (panda_pdf * output, panda_page * target, panda_object * imageObj, char *filename);
DESCRIPTION
PANDA INTERNAL. Do the actual insertion of the JPEG image into the PDF document. This routine handles the conversion of the JPEG image into the form supported by the PDF specification, and similar operations. It is an internal Panda call and should not be needed by users of the API.
RETURNS
Nothing
EXAMPLE
ee panda_imageboxrot for an example usage
SEE ALSO
panda_imagebox, panda_imageboxrot, panda_insertTIFF, panda_insertPNG
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_insertPNG.sgml
panda_insertPNG
3
panda_insertPNG
insert a PNG image into the PDF
#include<panda/constants.h>
#include<panda/functions.h>
void panda_insertPNG (panda_pdf * output, panda_page * target, panda_object * imageObj, char *filename);
DESCRIPTION
PANDA INTERNAL. Do the actual insertion of the PNG image into the PDF document. This routine handles the conversion of the PNG image into the form supported by the PDF specification, and similar operations. It is an internal Panda call and should not be needed by users of the API.
hile developing this function call, some reference was made to the source code for iText (http://www.lowagie.com/iText), which is a GPL'ed PDF generator written in Java. The code in Panda is original though...
RETURNS
Nothing
EXAMPLE
ee panda_imageboxrot for an example usage
SEE ALSO
panda_imagebox, panda_imageboxrot, panda_insertJPEG, panda_insertTIFF
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_insertTIFF.sgml
panda_insertTIFF
3
panda_insertTIFF
insert a TIFF image into the PDF
#include<panda/constants.h>
#include<panda/functions.h>
void panda_insertTIFF (panda_pdf * output, panda_page * target, panda_object * imageObj, char *filename);
DESCRIPTION
PANDA INTERNAL. Do the actual insertion of the TIFF image into the PDF document. This routine handles the conversion of the TIFF image into the form supported by the PDF specification, and similar operations. It is an internal Panda call and should not be needed by users of the API.
RETURNS
Nothing
EXAMPLE
ee panda_imageboxrot for an example usage
SEE ALSO
panda_imagebox, panda_imageboxrot, panda_insertJPEG, panda_insertPNG
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_makedate.sgml
panda_makedate
3
panda_makedate
format a date into the internal PDF representation
#include<panda/constants.h>
#include<panda/functions.h>
void panda_makedate (int year, int month, int day, int hour, int minutes, int seconds);
DESCRIPTION
PANDA INTERNAL. The function makedate generates a date that is suitable to be embedded into a PDF. This date will include information about the timezone in which the PDF was created and the relationship that this timezone has with GMT (Zulu) time. Mostly this function is used internally within Panda, and should not concern the average programmer too much.
RETURNS
The date passed formatted as a null terminated string.
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
printf("Panda would encode 19 July 1977 3:14:23 AM as: %s\n",
panda_makedate(1977, 7, 19, 3, 14, 23));
SEE ALSO
panda_nowdate
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_newobject.sgml
panda_newobject
3
panda_newobject
create a new object
#include<panda/constants.h>
#include<panda/functions.h>
panda_object *panda_newobject (panda_pdf *output, int type);
DESCRIPTION
PANDA INTERNAL. Create a new object within the PDF document output. The types of object are panda_object_normal and panda_object_placeholder -- the difference is that a placeholder object wont be written out when the PDF is dumped to disc. This is an internal function call and would only be need by API users if they are creating support for object types not currently supported by Panda. If this is the case, then these users are encouraged to submit their code changes back to mikal@stillhq.com for inclusion with the next release of Panda, and are reminded of their obligations under the GNU GPL.
RETURNS
A pointer to the new object (a panda_object *)
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_object *obj;
panda_init();
document = panda_open("filename.pdf", "w");
obj = panda_newobject(document, panda_object_normal);
SEE ALSO
panda_freeobject, panda_writeobject, panda_traverseobjects, panda_addchild
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_newpage.sgml
panda_newpage
3
panda_newpage
create a new page in the PDF
#include<panda/constants.h>
#include<panda/functions.h>
panda_page *panda_newpage(panda_pdf *document, char *pagesize);
DESCRIPTION
Create a new blank page at the end of the PDF with the specified size. Use the standard pagesize strings that are defined by Panda for most things. These are panda_pagesize_a4, and panda_pagesize_usletter. If you need to create your own page sizes, then have a look at these for hints.
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *page;
panda_init();
document = panda_open("filename.pdf", "w");
page = panda_newpage (document, panda_pagesize_a4);
SEE ALSO
panda_open, panda_close
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_newtemplate.sgml
panda_newtemplate
3
panda_newtemplate
create a template page in the PDF
#include<panda/constants.h>
#include<panda/functions.h>
void panda_newtemplate(panda_pdf *document, char *pageSize);
DESCRIPTION
This function is used to create 'template' pages which can then be refered to on other pages. For instance, if you were creating a document that used a standard letter head, then it would make sense to construct the letterhead as a template, and then use this on all the pages. The created template looks and feels just like any other page in the document for the purposes of creating content. Refer to the panda_newpage man page for details on how to use pages.
RETURNS
A pointer to the template page
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_page *templatepage;
panda_init();
document = panda_open("filename.pdf", "w");
templatepage = panda_newtemplate (document, panda_pagesize_a4);
SEE ALSO
panda_newpage, panda_applytemplate
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_nfspagemodde.sgml
panda_nfspagemodde
3
panda_nfspagemodde
defines display characteristics for the PDF document if it is using non fullscreen mode after defaulting to fullscreen mode
#include<panda/constants.h>
#include<panda/functions.h>
void panda_nfspagemode (panda_pdf *document, int pagemode);
DESCRIPTION
If the document in question is using fullscreen mode and then exits from fullscreen mode, then this function configures the behaviour of several of the 'eye candy' options available in some viewers. The possible values for pagemode are: panda_window_usenone, which displays neither the outline or thumbnails (if present); panda_window_useoutlines, which displays only the outline for the document; panda_window_usethumbs, which only displays thumbnails. Please note that this function will only have an effect on the viewer if the page mode has been set to fullscreen with the panda_fullscreen() function call
RETURNS
Nothing
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf *document;
panda_init();
document = panda_open("filename.pdf", "w");
panda_nfspagemode(document, panda_window_usenone);
SEE ALSO
panda_fullscreen
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_nowdate.sgml
panda_nowdate
3
panda_nowdate
return the string for now
#include<panda/constants.h>
#include<panda/functions.h>
void panda_nowdate ();
DESCRIPTION
PANDA INTERNAL. The function nowdate generates a date that is suitable to be embedded into a PDF. This date will include information about the timezone in which the PDF was created and the relationship that this timezone has with GMT (Zulu) time. Mostly this function is used internally within Panda, and should not concern the avaerage programmer too much. This version takes no input, and makes a date for the current time.
RETURNS
The current time in PDF format in a null terminated string.
EXAMPLE
#include<panda/constants.h>
#include<panda/functions.h>
printf("The time now is %s\n", panda_nowdate());
SEE ALSO
panda_makedate
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.
panda_open_actual.sgml
panda_open_actual
3
panda_open_actual
actually open a PDF document
#include<panda/constants.h>
#include<panda/functions.h>
panda_pdf * panda_open_actual (char *filename, char *mode);
DESCRIPTION
PANDA INTERNAL. Open the named PDF document with the mode specified. The only mode currently supported is "w", but others will be integrated later. The interface to this function is identical in it's behaviour to the fopen() function call offered by the ANSI C standard IO library. This call actually does the opening for panda_open() and panda_open_suppress().
RETURNS
A pointer to a panda_pdf structure
EXAMPLE
se panda_open!
SEE ALSO
panda_init, panda_open, panda_open_suppress, panda_close
VERSION
This documentation was generated for Panda 0.4.2 by autodocbook (http://www.stillhq.com).
AUTHOR
Panda is under development by Michael Still (mikal@stillhq.com). All code is Copyright Michael Still 2000 and 2001, and is released under the GNU GPL. Code submissions are welcomed. Contact Michael at the address above if you have something you would like to contribute.
BUGS
There are no known bugs in Panda. If you find one, please contact mikal@stillhq.com and let me know.