cvs: php4 /ext/pdf pdf.c php_pdf.h

From: Date: Wed, 21 Mar 2001 20:55:35 +0000
Subject: cvs: php4 /ext/pdf pdf.c php_pdf.h
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-4762@lists.php.net to get a copy of this message
rjs Wed Mar 21 12:55:35 2001 EDT Modified files: /php4/ext/pdf pdf.c php_pdf.h Log: Beta2 of PDFlib V4.0 will introduce on new function (PDF_place_pdi_page) and PDF_close_pdi_page will lose one parameter. These changes are done for the phpwrapper now. This has no impact on PDFlib V3.x. Index: php4/ext/pdf/pdf.c diff -u php4/ext/pdf/pdf.c:1.77 php4/ext/pdf/pdf.c:1.78 --- php4/ext/pdf/pdf.c:1.77 Fri Mar 9 18:21:38 2001 +++ php4/ext/pdf/pdf.c Wed Mar 21 12:55:34 2001 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: pdf.c,v 1.77 2001/03/10 02:21:38 hirokawa Exp $ */ +/* $Id: pdf.c,v 1.78 2001/03/21 20:55:34 rjs Exp $ */ /* Id: pdf.c,v 1.73 2001/02/26 06:07:11 andi Exp */ /* pdflib 2.02 ... 3.0x is subject to the ALADDIN FREE PUBLIC LICENSE. @@ -185,6 +185,7 @@ PHP_FE(pdf_open_pdi, NULL) PHP_FE(pdf_close_pdi, NULL) PHP_FE(pdf_open_pdi_page, NULL) + PHP_FE(pdf_place_pdi_page, NULL) PHP_FE(pdf_close_pdi_page, NULL) PHP_FE(pdf_get_pdi_parameter, NULL) PHP_FE(pdf_get_pdi_value, NULL) @@ -293,7 +294,7 @@ #else php_info_print_table_row(2, "PDFlib GmbH Version", tmp ); #endif - php_info_print_table_row(2, "Revision", "$Revision: 1.77 $" ); + php_info_print_table_row(2, "Revision", "$Revision: 1.78 $" ); php_info_print_table_end(); } @@ -2684,24 +2685,50 @@ RETURN_LONG(pdi_image+PDFLIB_IMAGE_OFFSET); } -/* {{{ proto void pdf_close_pdi_page(int pdf, int doc, int page); +/* {{{ proto void pdf_place_pdi_page(int pdf, int page, double x, double y, double sx, double sy) + * Place a PDF page with the lower left corner at (x, y), and scale it. */ +PHP_FUNCTION(pdf_place_pdi_page) { + zval **arg1, **arg2, **arg3, **arg4, **arg5, **arg6; + PDF *pdf; + + if (ZEND_NUM_ARGS() != 6 || zend_get_parameters_ex(6, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6) == FAILURE) { + WRONG_PARAM_COUNT; + } + + ZEND_FETCH_RESOURCE(pdf, PDF *, arg1, -1, "pdf object", le_pdf); + + convert_to_long_ex(arg2); + convert_to_double_ex(arg3); + convert_to_double_ex(arg4); + convert_to_double_ex(arg5); + convert_to_double_ex(arg6); + + PDF_place_pdi_page(pdf, + Z_LVAL_PP(arg2)-PDFLIB_IMAGE_OFFSET, + (float) Z_DVAL_PP(arg3), + (float) Z_DVAL_PP(arg4), + (float) Z_DVAL_PP(arg5), + (float) Z_DVAL_PP(arg6)); + + RETURN_TRUE; +} + +/* {{{ proto void pdf_close_pdi_page(int pdf, int page); * Close the page handle, and free all page-related resources. */ PHP_FUNCTION(pdf_close_pdi_page) { - zval **arg1, **arg2, **arg3; + zval **arg1, **arg2; PDF *pdf; - if (ZEND_NUM_ARGS() != 3 || zend_get_parameters_ex(3, &arg1, &arg2, &arg3) == FAILURE) { + if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &arg1, &arg2) == FAILURE) { WRONG_PARAM_COUNT; } ZEND_FETCH_RESOURCE(pdf, PDF *, arg1, -1, "pdf object", le_pdf); convert_to_long_ex(arg2); - convert_to_long_ex(arg3); PDF_close_pdi_page(pdf, - Z_LVAL_PP(arg2)-PDFLIB_PDI_OFFSET, - Z_LVAL_PP(arg3)-PDFLIB_IMAGE_OFFSET); + Z_LVAL_PP(arg2)-PDFLIB_IMAGE_OFFSET); RETURN_TRUE; } @@ -2854,7 +2881,7 @@ PHP_FUNCTION(pdf_setcolor) { zval **arg1, **arg2, **arg3, **arg4, **arg5, **arg6, **arg7; PDF *pdf; - int c1; + double c1; if (ZEND_NUM_ARGS() != 7 || zend_get_parameters_ex(7, &arg1, &arg2, &arg3, &arg4, &arg5, &arg6, &arg7) == FAILURE) { WRONG_PARAM_COUNT; @@ -2870,11 +2897,11 @@ convert_to_double_ex(arg7); if (0 == (strcmp(Z_STRVAL_PP(arg3), "spot"))) { - c1 = (int) Z_DVAL_PP(arg4)-PDFLIB_SPOT_OFFSET; + c1 = Z_DVAL_PP(arg4)-PDFLIB_SPOT_OFFSET; } else if(0 == (strcmp(Z_STRVAL_PP(arg3), "pattern"))) { - c1 = (int) Z_DVAL_PP(arg4)-PDFLIB_PATTERN_OFFSET; + c1 = Z_DVAL_PP(arg4)-PDFLIB_PATTERN_OFFSET; } else { - c1 = (float) Z_DVAL_PP(arg4); + c1 = Z_DVAL_PP(arg4); } PDF_setcolor(pdf, Index: php4/ext/pdf/php_pdf.h diff -u php4/ext/pdf/php_pdf.h:1.15 php4/ext/pdf/php_pdf.h:1.16 --- php4/ext/pdf/php_pdf.h:1.15 Thu Mar 1 11:51:54 2001 +++ php4/ext/pdf/php_pdf.h Wed Mar 21 12:55:34 2001 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_pdf.h,v 1.15 2001/03/01 19:51:54 rjs Exp $ */ +/* $Id: php_pdf.h,v 1.16 2001/03/21 20:55:34 rjs Exp $ */ #ifndef PHP_PDF_H #define PHP_PDF_H @@ -151,6 +151,7 @@ PHP_FUNCTION(pdf_open_pdi); PHP_FUNCTION(pdf_close_pdi); PHP_FUNCTION(pdf_open_pdi_page); +PHP_FUNCTION(pdf_place_pdi_page); PHP_FUNCTION(pdf_close_pdi_page); PHP_FUNCTION(pdf_get_pdi_parameter); PHP_FUNCTION(pdf_get_pdi_value);

« previous php.cvs (#4762) next »