Index: branches/RC/core/units/pdf/pdf_renderer_tcpdf.php =================================================================== diff -u -N -r10294 -r10432 --- branches/RC/core/units/pdf/pdf_renderer_tcpdf.php (.../pdf_renderer_tcpdf.php) (revision 10294) +++ branches/RC/core/units/pdf/pdf_renderer_tcpdf.php (.../pdf_renderer_tcpdf.php) (revision 10432) @@ -37,40 +37,44 @@ function IncludeTCPDF() { - define('K_TCPDF_EXTERNAL_CONFIG', true); - define('K_PATH_MAIN', FULL_PATH.'/tcpdf/'); - define('K_PATH_URL', PROTOCOL.SERVER_NAME.(defined('PORT')?':'.PORT : '').rtrim(BASE_PATH, '/').'/tcpdf/'); - define ("K_PATH_FONTS", K_PATH_MAIN."fonts/"); - define ("K_PATH_CACHE", K_PATH_MAIN."cache/"); - define ("K_PATH_URL_CACHE", K_PATH_URL."cache/"); - define ("K_PATH_IMAGES", K_PATH_MAIN."images/"); - define ("K_BLANK_IMAGE", K_PATH_IMAGES."_blank.png"); - define ("PDF_PAGE_FORMAT", "A4"); - define ("PDF_PAGE_ORIENTATION", "P"); - define ("PDF_CREATOR", "TCPDF"); - define ("PDF_AUTHOR", "TCPDF"); - define ("PDF_HEADER_TITLE", "0"); - define ("PDF_HEADER_STRING", "0"); - define ("PDF_HEADER_LOGO", "logo_example.png"); - define ("PDF_HEADER_LOGO_WIDTH", 0); - define ("PDF_UNIT", "pt"); - define ("PDF_MARGIN_HEADER", 0); - define ("PDF_MARGIN_FOOTER", 0); - define ("PDF_MARGIN_TOP", 0); - define ("PDF_MARGIN_BOTTOM", 0); - define ("PDF_MARGIN_LEFT", 0); - define ("PDF_MARGIN_RIGHT", 0); - define ("PDF_FONT_NAME_MAIN", "vera"); //vera - define ("PDF_FONT_SIZE_MAIN", 10); - define ("PDF_FONT_NAME_DATA", "vera"); //verase - define ("PDF_FONT_SIZE_DATA", 8); - define ("PDF_IMAGE_SCALE_RATIO", 4); - define("HEAD_MAGNIFICATION", 1.1); - define("K_CELL_HEIGHT_RATIO", 1.25); - define("K_TITLE_MAGNIFICATION", 1.3); - define("K_SMALL_RATIO", 2/3); - require_once(FULL_PATH.'/tcpdf/config/lang/eng.php'); - require_once(FULL_PATH.'/tcpdf/tcpdf.php'); + static $included = false; + if (!$included) { + define('K_TCPDF_EXTERNAL_CONFIG', true); + define('K_PATH_MAIN', FULL_PATH.'/tcpdf/'); + define('K_PATH_URL', PROTOCOL.SERVER_NAME.(defined('PORT')?':'.PORT : '').rtrim(BASE_PATH, '/').'/tcpdf/'); + define ("K_PATH_FONTS", K_PATH_MAIN."fonts/"); + define ("K_PATH_CACHE", K_PATH_MAIN."cache/"); + define ("K_PATH_URL_CACHE", K_PATH_URL."cache/"); + define ("K_PATH_IMAGES", K_PATH_MAIN."images/"); + define ("K_BLANK_IMAGE", K_PATH_IMAGES."_blank.png"); + define ("PDF_PAGE_FORMAT", "A4"); + define ("PDF_PAGE_ORIENTATION", "P"); + define ("PDF_CREATOR", "TCPDF"); + define ("PDF_AUTHOR", "TCPDF"); + define ("PDF_HEADER_TITLE", "0"); + define ("PDF_HEADER_STRING", "0"); + define ("PDF_HEADER_LOGO", "logo_example.png"); + define ("PDF_HEADER_LOGO_WIDTH", 0); + define ("PDF_UNIT", "pt"); + define ("PDF_MARGIN_HEADER", 0); + define ("PDF_MARGIN_FOOTER", 0); + define ("PDF_MARGIN_TOP", 0); + define ("PDF_MARGIN_BOTTOM", 0); + define ("PDF_MARGIN_LEFT", 0); + define ("PDF_MARGIN_RIGHT", 0); + define ("PDF_FONT_NAME_MAIN", "vera"); //vera + define ("PDF_FONT_SIZE_MAIN", 10); + define ("PDF_FONT_NAME_DATA", "vera"); //verase + define ("PDF_FONT_SIZE_DATA", 8); + define ("PDF_IMAGE_SCALE_RATIO", 4); + define("HEAD_MAGNIFICATION", 1.1); + define("K_CELL_HEIGHT_RATIO", 1.25); + define("K_TITLE_MAGNIFICATION", 1.3); + define("K_SMALL_RATIO", 2/3); + require_once(FULL_PATH.'/tcpdf/config/lang/eng.php'); + require_once(FULL_PATH.'/tcpdf/tcpdf.php'); + $included = true; + } } function NextPage() Index: branches/RC/core/units/pdf/pdf_table.php =================================================================== diff -u -N -r10294 -r10432 --- branches/RC/core/units/pdf/pdf_table.php (.../pdf_table.php) (revision 10294) +++ branches/RC/core/units/pdf/pdf_table.php (.../pdf_table.php) (revision 10432) @@ -247,13 +247,15 @@ $min_diff = ($min_cw - array_sum($spans_min)); if ($min_diff > 0) { for($i=$col; $i < $col+$colspan; $i++) { + if (!isset($min_col_widths[$i])) $min_col_widths[$i] = 0; $min_col_widths[$i] += $min_diff/$colspan; } } $max_diff = ($max_cw - array_sum($spans_max)); if ($max_diff > 0) { for($i=$col; $i < $col+$colspan; $i++) { + if (!isset($max_col_widths[$i])) $max_col_widths[$i] = 0; $max_col_widths[$i] += $max_diff/$colspan; } } Index: branches/RC/core/units/pdf/pdf_text.php =================================================================== diff -u -N -r10294 -r10432 --- branches/RC/core/units/pdf/pdf_text.php (.../pdf_text.php) (revision 10294) +++ branches/RC/core/units/pdf/pdf_text.php (.../pdf_text.php) (revision 10432) @@ -142,7 +142,7 @@ // remove space at the end of line // @todo Find a way to detect a space at the end of last line, which is NOT wrapped // otherwise right-aligned blocks will have a space at the end of last line - if ( $words[$i-1] == ' ' && $line_break && + if ( ($i > 0 && $words[$i-1]) == ' ' && $line_break && ($whitespace == 'normal' || $whitespace == 'nowrap' || $whitespace == 'preline') ) { $i--; Index: branches/RC/core/units/pdf/pdf_helper.php =================================================================== diff -u -N -r10294 -r10432 --- branches/RC/core/units/pdf/pdf_helper.php (.../pdf_helper.php) (revision 10294) +++ branches/RC/core/units/pdf/pdf_helper.php (.../pdf_helper.php) (revision 10432) @@ -42,8 +42,7 @@ function BuildFromTemplate($template, $template_params = Array ()) { $this->Application->InitParser(); - $template_params['name'] = $template; - $xml = $this->Application->ParseBlock($template_params); + $xml = $this->Application->Parser->ParseTemplate($template, 1, $template_params); $xml_helper =& $this->Application->recallObject('kXMLHelper'); /* @var $xml_helper kXMLHelper */