helly           Tue Nov 12 06:49:12 2002 EDT

  Modified files:              
    /php4/ext/gd        gd.c php_gd.h 
  Log:
  new function gd_info() returns an associative array of gd support options. # The 
index names are those from the minfo function. Therefore it is 
  # easy to look into phpinfo() to see which index names are possible.
  
  
Index: php4/ext/gd/gd.c
diff -u php4/ext/gd/gd.c:1.220 php4/ext/gd/gd.c:1.221
--- php4/ext/gd/gd.c:1.220      Wed Oct 30 12:54:36 2002
+++ php4/ext/gd/gd.c    Tue Nov 12 06:49:11 2002
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: gd.c,v 1.220 2002/10/30 17:54:36 helly Exp $ */
+/* $Id: gd.c,v 1.221 2002/11/12 11:49:11 helly Exp $ */
 
 /* gd 1.2 is copyright 1994, 1995, Quest Protein Database Center, 
    Cold Spring Harbor Labs. */
@@ -117,6 +117,7 @@
 /* {{{ gd_functions[]
  */
 function_entry gd_functions[] = {
+       PHP_FE(gd_info,                                 NULL)
        PHP_FE(imagearc,                                                               
 NULL)
        PHP_FE(imageellipse,                                                    NULL)
        PHP_FE(imagechar,                                                              
 NULL)
@@ -415,6 +416,82 @@
        php_info_print_table_row(2, "XBM Support", "enabled");
 #endif
        php_info_print_table_end();
+}
+/* }}} */
+
+/* {{{ proto array gd_info()
+ */
+PHP_FUNCTION(gd_info)
+{
+       if (ZEND_NUM_ARGS()!=0) {
+               ZEND_WRONG_PARAM_COUNT();
+               RETURN_FALSE;
+       }
+
+       if (array_init(return_value) == FAILURE) {
+               php_error_docref(NULL TSRMLS_CC, E_ERROR, "Unable to initialize 
+array");
+               RETURN_FALSE;
+       }
+#if HAVE_GD_BUNDLED
+       add_assoc_string(return_value, "GD Version", "bundled (2.0 compatible)", 1);
+#elif HAVE_LIBGD20
+       add_assoc_string(return_value, "GD Version", "2.0 or higher", 1);
+#elif HAVE_GDIMAGECOLORRESOLVE
+       add_assoc_string(return_value, "GD Version", "1.6.2 or higher", 1);
+#elif HAVE_LIBGD13
+       add_assoc_string(return_value, "GD Version", "between 1.3 and 1.6.1", 1);
+#else
+       add_assoc_string(return_value, "GD Version", "1.2", 1);
+#endif
+
+#ifdef ENABLE_GD_TTF
+       add_assoc_bool(return_value, "FreeType Support", 1);
+#if HAVE_LIBFREETYPE
+       add_assoc_string(return_value, "FreeType Linkage", "with freetype", 1);
+#elif HAVE_LIBTTF
+       add_assoc_string(return_value, "FreeType Linkage", "with TTF library", 1);
+#else
+       add_assoc_string(return_value, "FreeType Linkage", "with unknown library", 1);
+#endif
+#else
+       add_assoc_bool(return_value, "FreeType Support", 0);
+#endif
+
+#ifdef HAVE_LIBT1
+       add_assoc_bool(return_value, "T1Lib Support", 1);
+#else
+       add_assoc_bool(return_value, "T1Lib Support", 0);
+#endif
+#ifdef HAVE_GD_GIF_READ
+       add_assoc_bool(return_value, "GIF Read Support", 1);
+#else
+       add_assoc_bool(return_value, "GIF Read Support", 0);
+#endif
+#ifdef HAVE_GD_GIF_CREATE
+       add_assoc_bool(return_value, "GIF Create Support", 1);
+#else
+       add_assoc_bool(return_value, "GIF Create Support", 0);
+#endif
+#ifdef HAVE_GD_JPG
+       add_assoc_bool(return_value, "JPG Support", 1);
+#else
+       add_assoc_bool(return_value, "JPG Support", 0);
+#endif
+#ifdef HAVE_GD_PNG
+       add_assoc_bool(return_value, "PNG Support", 1);
+#else
+       add_assoc_bool(return_value, "PNG Support", 0);
+#endif
+#ifdef HAVE_GD_WBMP
+       add_assoc_bool(return_value, "WBMP Support", 1);
+#else
+       add_assoc_bool(return_value, "WBMP Support", 0);
+#endif
+#ifdef HAVE_GD_XBM
+       add_assoc_bool(return_value, "XBM Support", 1);
+#else
+       add_assoc_bool(return_value, "XBM Support", 0);
+#endif
 }
 /* }}} */
 
Index: php4/ext/gd/php_gd.h
diff -u php4/ext/gd/php_gd.h:1.43 php4/ext/gd/php_gd.h:1.44
--- php4/ext/gd/php_gd.h:1.43   Mon Oct 28 20:15:43 2002
+++ php4/ext/gd/php_gd.h        Tue Nov 12 06:49:11 2002
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: php_gd.h,v 1.43 2002/10/29 01:15:43 iliaa Exp $ */
+/* $Id: php_gd.h,v 1.44 2002/11/12 11:49:11 helly Exp $ */
 
 #ifndef PHP_GD_H
 #define PHP_GD_H
@@ -59,6 +59,7 @@
 PHP_MINIT_FUNCTION(gd);
 PHP_MSHUTDOWN_FUNCTION(gd);
 
+PHP_FUNCTION(gd_info);
 PHP_FUNCTION(imagearc);
 PHP_FUNCTION(imagechar);
 PHP_FUNCTION(imagecharup);



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to