GetX: retrieve current X posision [ 5 ]
Description
This function enables calling programs to retrieve current abscissa position given previous commands which have been issued. It does not take parameter and it returns a float number.
C calling syntax
float GetX (void)
Cobol calling syntax
Call "GetX" returning X
C sample code
#include "fpdf.h" static char f_ini ??(??) = ??< "ini??/??/demofpdf.ini" ??>; static char f_out ??(??) = ??< "pdf??/??/demo_f.pdf" ??>; static char *align ??(??) = ??< "L", "L", "C", "C", "R", "R"??>; static char *bordr ??(??) = ??< "LR", "LRTB", "LRTB", "LR" ??>; /* ----------------------------------------------------------------- */ int main (int argc, char *argv []) ??< int ii, jj; float ww ??(??) = ??<30, 25, 40, 25, 25, 35 ??>; char bufr ??(128??); char *fill; NewPdfy (f_ini, 1); AddPage ("P"); SetMargins (10, 10, 10); SetLineWidth (0.4); SetFont ("Arial", "BI", 9); SetDrawColor (160, 0, 0); SetFillColor (128, 255, 255); SetTextColor (0, 0, 128); SetXY (10, 20); for (ii = 0; ii < 6; ii ++) ??< sprintf (bufr, "Column #%d", ii); Cell (ww ??(ii??), 6, bufr, "1", "0", "C", "1", 0); ??> SetLineWidth (0.2); SetDrawColor (64, 64, 64); SetFont ("Courier", "B", 9); SetTextColor (0, 0, 0); SetFillColor (240, 240, 240); SetY (GetY () + 10); jj = 0; for (jj = 0; jj < 4; jj ++) ??< SetX (10); SetY (GetY () + 6); for (ii = 0; ii < 6; ii ++) ??< sprintf (bufr, "L%d - C%d", jj, ii); Cell (ww ??(ii??), 6, bufr, bordr ??(jj??), "0", align ??(ii??), "0", 0); ??> ??> SetY (GetY () + 10); for ( ; jj < 16; jj ++) ??< SetX (10); SetY (GetY () + 6); if ((jj & 1) == 0) fill = "1"; else fill = "0"; for (ii = 0; ii < 6; ii ++) ??< SetX (GetX () + 1); sprintf (bufr, "L%d - C%d", jj, ii); Cell (ww ??(ii??) - 1, 6, bufr, "0", "0", align ??(ii??), fill, 0); ??> ??> FlushPdf(f_out, 2, "CUST66", "demo_f"); ??>
Description of sample code
This programs illustrates various features of Cell functions of FPDF4ZOS. It opens a PDF context, and creates a six columns table formed of cells. - Header row features Center aligned Cells with fill and border display. - Three next data rows are built using four sides borders with various text alignments and border patterns. - Finally, it builds another set of rows with various text alignments and zebra patterns. The following functions are used in this piece: - NewPdfy() --> Initialisation of a pdf context - AddPage() --> As it says - SetLineWidth() --> Instruct that PDF is to be protected at user and owner levels - SetDrawColor() --> Set the color of lines to be drawn - SetFillColor() --> Set the color of area to be filled - SetFont() --> Set current font - SetMargins() --> Specify page margins (left, top, right) - SetX() --> Set X current position - SetY() --> Set Y current position - GetX() --> Get X current position - GetY() --> Get Y current position - Cell() --> Print a Text Cell - FlushPdf() --> Output PDF file taking into account all the instructions invoked since context initialization
See sample source code in 'C' as well as PDF execution result - NB: For encrypted PDFs, user password is USER-PSWD