44if ((!isset(
$_SERVER[
'DOCUMENT_ROOT'])) OR (empty(
$_SERVER[
'DOCUMENT_ROOT']))) {
 
   45        if(isset(
$_SERVER[
'SCRIPT_FILENAME'])) {
 
   46                $_SERVER[
'DOCUMENT_ROOT'] = str_replace( 
'\\', 
'/', substr(
$_SERVER[
'SCRIPT_FILENAME'], 0, 0-strlen(
$_SERVER[
'PHP_SELF'])));
 
   47        } elseif(isset(
$_SERVER[
'PATH_TRANSLATED'])) {
 
   48                $_SERVER[
'DOCUMENT_ROOT'] = str_replace( 
'\\', 
'/', substr(str_replace(
'\\\\', 
'\\', 
$_SERVER[
'PATH_TRANSLATED']), 0, 0-strlen(
$_SERVER[
'PHP_SELF'])));
 
   55if (substr(
$_SERVER[
'DOCUMENT_ROOT'], -1) != 
'/') {
 
   62        $tcpdf_config_files = array(dirname(__FILE__).
'/config/tcpdf_config.php', 
'/etc/php-tcpdf/tcpdf_config.php', 
'/etc/tcpdf/tcpdf_config.php', 
'/etc/tcpdf_config.php');
 
   63        foreach ($tcpdf_config_files as $tcpdf_config) {
 
   64                if (@file_exists($tcpdf_config) AND is_readable($tcpdf_config)) {
 
   65                        require_once($tcpdf_config);
 
   71if (!defined(
'K_PATH_MAIN')) {
 
   72        define (
'K_PATH_MAIN', dirname(__FILE__).
'/');
 
   75if (!defined(
'K_PATH_FONTS')) {
 
   76        define (
'K_PATH_FONTS', K_PATH_MAIN.
'fonts/');
 
   79if (!defined(
'K_PATH_URL')) {
 
   80        $k_path_url = K_PATH_MAIN; 
 
   83                        $k_path_url = 
'https://';
 
   85                        $k_path_url = 
'http://';
 
   87                $k_path_url .= 
$_SERVER[
'HTTP_HOST'];
 
   88                $k_path_url .= str_replace( 
'\\', 
'/', substr(K_PATH_MAIN, (strlen(
$_SERVER[
'DOCUMENT_ROOT']) - 1)));
 
   90        define (
'K_PATH_URL', $k_path_url);
 
   93if (!defined(
'K_PATH_IMAGES')) {
 
   94        $tcpdf_images_dirs = array(K_PATH_MAIN.
'examples/images/', K_PATH_MAIN.
'images/', 
'/usr/share/doc/php-tcpdf/examples/images/', 
'/usr/share/doc/tcpdf/examples/images/', 
'/usr/share/doc/php/tcpdf/examples/images/', 
'/var/www/tcpdf/images/', 
'/var/www/html/tcpdf/images/', 
'/usr/local/apache2/htdocs/tcpdf/images/', K_PATH_MAIN);
 
   95        foreach ($tcpdf_images_dirs as $tcpdf_images_path) {
 
   96                if (@file_exists($tcpdf_images_path)) {
 
   97                        define (
'K_PATH_IMAGES', $tcpdf_images_path);
 
  103if (!defined(
'PDF_HEADER_LOGO')) {
 
  104        $tcpdf_header_logo = 
'';
 
  106                $tcpdf_header_logo = 
'tcpdf_logo.jpg';
 
  108        define (
'PDF_HEADER_LOGO', $tcpdf_header_logo);
 
  111if (!defined(
'PDF_HEADER_LOGO_WIDTH')) {
 
  112        if (!empty($tcpdf_header_logo)) {
 
  113                define (
'PDF_HEADER_LOGO_WIDTH', 30);
 
  115                define (
'PDF_HEADER_LOGO_WIDTH', 0);
 
  119if (!defined(
'K_PATH_CACHE')) {
 
  120        $K_PATH_CACHE = ini_get(
'upload_tmp_dir') ? ini_get(
'upload_tmp_dir') : sys_get_temp_dir();
 
  121        if (substr($K_PATH_CACHE, -1) != 
'/') {
 
  122                $K_PATH_CACHE .= 
'/';
 
  124        define (
'K_PATH_CACHE', $K_PATH_CACHE);
 
  127if (!defined(
'K_BLANK_IMAGE')) {
 
  128        define (
'K_BLANK_IMAGE', 
'_blank.png');
 
  131if (!defined(
'PDF_PAGE_FORMAT')) {
 
  132        define (
'PDF_PAGE_FORMAT', 
'A4');
 
  135if (!defined(
'PDF_PAGE_ORIENTATION')) {
 
  136        define (
'PDF_PAGE_ORIENTATION', 
'P');
 
  139if (!defined(
'PDF_CREATOR')) {
 
  140        define (
'PDF_CREATOR', 
'TCPDF');
 
  143if (!defined(
'PDF_AUTHOR')) {
 
  144        define (
'PDF_AUTHOR', 
'TCPDF');
 
  147if (!defined(
'PDF_HEADER_TITLE')) {
 
  148        define (
'PDF_HEADER_TITLE', 
'TCPDF Example');
 
  151if (!defined(
'PDF_HEADER_STRING')) {
 
  152        define (
'PDF_HEADER_STRING', 
"by Nicola Asuni - Tecnick.com\nwww.tcpdf.org");
 
  155if (!defined(
'PDF_UNIT')) {
 
  156        define (
'PDF_UNIT', 
'mm');
 
  159if (!defined(
'PDF_MARGIN_HEADER')) {
 
  160        define (
'PDF_MARGIN_HEADER', 5);
 
  163if (!defined(
'PDF_MARGIN_FOOTER')) {
 
  164        define (
'PDF_MARGIN_FOOTER', 10);
 
  167if (!defined(
'PDF_MARGIN_TOP')) {
 
  168        define (
'PDF_MARGIN_TOP', 27);
 
  171if (!defined(
'PDF_MARGIN_BOTTOM')) {
 
  172        define (
'PDF_MARGIN_BOTTOM', 25);
 
  175if (!defined(
'PDF_MARGIN_LEFT')) {
 
  176        define (
'PDF_MARGIN_LEFT', 15);
 
  179if (!defined(
'PDF_MARGIN_RIGHT')) {
 
  180        define (
'PDF_MARGIN_RIGHT', 15);
 
  183if (!defined(
'PDF_FONT_NAME_MAIN')) {
 
  184        define (
'PDF_FONT_NAME_MAIN', 
'helvetica');
 
  187if (!defined(
'PDF_FONT_SIZE_MAIN')) {
 
  188        define (
'PDF_FONT_SIZE_MAIN', 10);
 
  191if (!defined(
'PDF_FONT_NAME_DATA')) {
 
  192        define (
'PDF_FONT_NAME_DATA', 
'helvetica');
 
  195if (!defined(
'PDF_FONT_SIZE_DATA')) {
 
  196        define (
'PDF_FONT_SIZE_DATA', 8);
 
  199if (!defined(
'PDF_FONT_MONOSPACED')) {
 
  200        define (
'PDF_FONT_MONOSPACED', 
'courier');
 
  203if (!defined(
'PDF_IMAGE_SCALE_RATIO')) {
 
  204        define (
'PDF_IMAGE_SCALE_RATIO', 1.25);
 
  207if (!defined(
'HEAD_MAGNIFICATION')) {
 
  208        define(
'HEAD_MAGNIFICATION', 1.1);
 
  211if (!defined(
'K_CELL_HEIGHT_RATIO')) {
 
  212        define(
'K_CELL_HEIGHT_RATIO', 1.25);
 
  215if (!defined(
'K_TITLE_MAGNIFICATION')) {
 
  216        define(
'K_TITLE_MAGNIFICATION', 1.3);
 
  219if (!defined(
'K_SMALL_RATIO')) {
 
  220        define(
'K_SMALL_RATIO', 2/3);
 
  223if (!defined(
'K_THAI_TOPCHARS')) {
 
  224        define(
'K_THAI_TOPCHARS', 
true);
 
  227if (!defined(
'K_TCPDF_CALLS_IN_HTML')) {
 
  228        define(
'K_TCPDF_CALLS_IN_HTML', 
false);
 
  231if (!defined(
'K_TCPDF_THROW_EXCEPTION_ERROR')) {
 
  232        define(
'K_TCPDF_THROW_EXCEPTION_ERROR', 
false);
 
  235if (!defined(
'K_TIMEZONE')) {
 
  236        define(
'K_TIMEZONE', @date_default_timezone_get());
 
An exception for terminatinating execution or to throw for unit testing.
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']
const K_PATH_IMAGES
Installation path (/var/www/tcpdf/).
const K_TCPDF_EXTERNAL_CONFIG
Define the following constant to ignore the default configuration file.