src/Examples/checkttf.php | 4 +- src/Examples/test3.php | 42 ++++++++++++++++ src/jpg-config.inc.php | 4 +- src/jpgraph.php | 4 +- src/jpgraph_ttf.inc.php | 120 +++++++++++++++++++++++++--------------------- 5 files changed, 113 insertions(+), 61 deletions(-) diff --git a/src/Examples/checkttf.php b/src/Examples/checkttf.php index 5efe737..a88ecf5 100755 --- a/src/Examples/checkttf.php +++ b/src/Examples/checkttf.php @@ -1,9 +1,9 @@ SetScale('intint'); + +// Adjust the margins to fit the margin +$graph->SetMargin(30,100,40,30); + +// Setup +$graph->title->Set('Basic contour plot'); +$graph->title->SetFont(FF_ARIAL,FS_BOLD,12); + +// A simple contour plot with default arguments (e.g. 10 isobar lines) +$cp = new ContourPlot($data); + +// Display the legend +$cp->ShowLegend(); + +$graph->Add($cp); + +// ... and send the graph back to the browser +$graph->Stroke(); + +?> + + diff --git a/src/jpg-config.inc.php b/src/jpg-config.inc.php index ea16c1e..40f1216 100755 --- a/src/jpg-config.inc.php +++ b/src/jpg-config.inc.php @@ -36,8 +36,8 @@ // //------------------------------------------------------------------------ // define('CACHE_DIR','/tmp/jpgraph_cache/'); -// define('TTF_DIR','/usr/share/fonts/TrueType/'); -// define('MBTTF_DIR','/usr/share/fonts/TrueType/'); +define('TTF_DIR','/usr/share/fonts/ttf/'); +define('MBTTF_DIR','/usr/share/fonts/ttf/'); //------------------------------------------------------------------------- // Cache directory specification for use with CSIM graphs that are diff --git a/src/jpgraph.php b/src/jpgraph.php index f9419da..8eb539a 100755 --- a/src/jpgraph.php +++ b/src/jpgraph.php @@ -201,7 +201,7 @@ if (!defined('TTF_DIR')) { define('TTF_DIR', $sroot.'/fonts/'); } } else { - define('TTF_DIR','/usr/share/fonts/truetype/'); + define('TTF_DIR','/usr/share/fonts/ttf/'); } } @@ -220,7 +220,7 @@ if (!defined('MBTTF_DIR')) { define('MBTTF_DIR', $sroot.'/fonts/'); } } else { - define('MBTTF_DIR','/usr/share/fonts/truetype/'); + define('MBTTF_DIR','/usr/share/fonts/ttf/'); } } diff --git a/src/jpgraph_ttf.inc.php b/src/jpgraph_ttf.inc.php index 5a1bc3e..8188ff2 100755 --- a/src/jpgraph_ttf.inc.php +++ b/src/jpgraph_ttf.inc.php @@ -86,7 +86,7 @@ define("FF_FONT2",4); // Actual name of the TTF file used together with FF_CHINESE aka FF_BIG5 // This is the TTF file being used when the font family is specified as // either FF_CHINESE or FF_BIG5 -define('CHINESE_TTF_FONT','bkai00mp.ttf'); +define('CHINESE_TTF_FONT','chinese-big5/bkai00mp.ttf'); // Special unicode greek language support define("LANGUAGE_GREEK",false); @@ -279,44 +279,54 @@ class TTF { // File names for available fonts $this->font_files=array( - FF_COURIER => array(FS_NORMAL =>'cour.ttf', - FS_BOLD =>'courbd.ttf', - FS_ITALIC =>'couri.ttf', - FS_BOLDITALIC =>'courbi.ttf' ), - FF_GEORGIA => array(FS_NORMAL =>'georgia.ttf', - FS_BOLD =>'georgiab.ttf', - FS_ITALIC =>'georgiai.ttf', + FF_COURIER => array( + FS_NORMAL =>array('ms/cour.ttf','cour.ttf'), + FS_BOLD =>array('ms/courbd.ttf','courbd.ttf'), + FS_ITALIC =>array('ms/couri.ttf','couri.ttf'), + FS_BOLDITALIC =>array('ms/courbi.ttf','courbi.ttf') ), + FF_GEORGIA => array( + FS_NORMAL =>array('ms/georgia.ttf','georgia.ttf'), + FS_BOLD =>array('ms/georgiab.ttf','georgiab.ttf'), + FS_ITALIC =>array('ms/georgiai.ttf','georgiai.ttf'), FS_BOLDITALIC =>'' ), - FF_TREBUCHE =>array(FS_NORMAL =>'trebuc.ttf', - FS_BOLD =>'trebucbd.ttf', - FS_ITALIC =>'trebucit.ttf', - FS_BOLDITALIC =>'trebucbi.ttf' ), - FF_VERDANA => array(FS_NORMAL =>'verdana.ttf', - FS_BOLD =>'verdanab.ttf', - FS_ITALIC =>'verdanai.ttf', + FF_TREBUCHE => array( + FS_NORMAL =>array('ms/trebuc.ttf','trebuc.ttf'), + FS_BOLD =>array('ms/trebucbd.ttf','trebucbd.ttf'), + FS_ITALIC =>array('ms/trebucit.ttf','trebucit.ttf'), + FS_BOLDITALIC =>array('ms/trebucbi.ttf','trebucbi.ttf') ), + FF_VERDANA => array( + FS_NORMAL =>array('ms/verdana.ttf','verdana.ttf'), + FS_BOLD =>array('ms/verdanab.ttf','verdanab.ttf'), + FS_ITALIC =>array('ms/verdanai.ttf','verdanai.ttf'), FS_BOLDITALIC =>'' ), - FF_TIMES => array(FS_NORMAL =>'times.ttf', - FS_BOLD =>'timesbd.ttf', - FS_ITALIC =>'timesi.ttf', - FS_BOLDITALIC =>'timesbi.ttf' ), - FF_COMIC => array(FS_NORMAL =>'comic.ttf', - FS_BOLD =>'comicbd.ttf', + FF_TIMES => array( + FS_NORMAL =>array('ms/times.ttf','times.ttf'), + FS_BOLD =>array('ms/timesbd.ttf','timesbd.ttf'), + FS_ITALIC =>array('ms/timesi.ttf','timesi.ttf'), + FS_BOLDITALIC =>array('ms/timesbi.ttf','timesbi.ttf') ), + FF_COMIC => array( + FS_NORMAL =>array('ms/comic.ttf','comic.ttf'), + FS_BOLD =>array('ms/comicbd.ttf','comicbd.ttf'), FS_ITALIC =>'', FS_BOLDITALIC =>'' ), - FF_ARIAL => array(FS_NORMAL =>'arial.ttf', - FS_BOLD =>'arialbd.ttf', - FS_ITALIC =>'ariali.ttf', - FS_BOLDITALIC =>'arialbi.ttf' ) , - FF_VERA => array(FS_NORMAL =>'Vera.ttf', - FS_BOLD =>'VeraBd.ttf', - FS_ITALIC =>'VeraIt.ttf', - FS_BOLDITALIC =>'VeraBI.ttf' ), - FF_VERAMONO => array(FS_NORMAL =>'VeraMono.ttf', - FS_BOLD =>'VeraMoBd.ttf', - FS_ITALIC =>'VeraMoIt.ttf', - FS_BOLDITALIC =>'VeraMoBI.ttf' ), - FF_VERASERIF=> array(FS_NORMAL =>'VeraSe.ttf', - FS_BOLD =>'VeraSeBd.ttf', + FF_ARIAL => array( + FS_NORMAL =>array('ms/arial.ttf','arial.ttf'), + FS_BOLD =>array('ms/arialbd.ttf','arialbd.ttf'), + FS_ITALIC =>array('ms/ariali.ttf','ariali.ttf'), + FS_BOLDITALIC =>array('ms/arialbi.ttf','arialbi.ttf') ) , + FF_VERA => array( + FS_NORMAL =>array('TrueType-vera/Vera.ttf','Vera.ttf'), + FS_BOLD =>array('TrueType-vera/VeraBd.ttf','VeraBd.ttf'), + FS_ITALIC =>array('TrueType-vera/VeraIt.ttf','VeraIt.ttf'), + FS_BOLDITALIC =>array('TrueType-vera/VeraBI.ttf','VeraBI.ttf') ), + FF_VERAMONO => array( + FS_NORMAL =>array('TrueType-vera/VeraMono.ttf','VeraMono.ttf'), + FS_BOLD =>array('TrueType-vera/VeraMoBd.ttf','VeraMoBd.ttf'), + FS_ITALIC =>array('TrueType-vera/VeraMoIt.ttf','VeraMoIt.ttf'), + FS_BOLDITALIC =>array('TrueType-vera/VeraMoBI.ttf','VeraMoBI.ttf') ), + FF_VERASERIF => array( + FS_NORMAL =>array('TrueType-vera/VeraSe.ttf','VeraSe.ttf'), + FS_BOLD =>array('TrueType-vera/VeraSeBd.ttf','VeraSeBd.ttf'), FS_ITALIC =>'', FS_BOLDITALIC =>'' ) , @@ -410,34 +420,34 @@ class TTF { /* Dejavu fonts */ FF_DV_SANSSERIF => array( - FS_NORMAL =>array('DejaVuSans.ttf'), - FS_BOLD =>array('DejaVuSans-Bold.ttf','DejaVuSansBold.ttf'), - FS_ITALIC =>array('DejaVuSans-Oblique.ttf','DejaVuSansOblique.ttf'), - FS_BOLDITALIC =>array('DejaVuSans-BoldOblique.ttf','DejaVuSansBoldOblique.ttf') ), + FS_NORMAL =>array('dejavu/DejaVuSans.ttf','DejaVuSans.ttf'), + FS_BOLD =>array('dejavu/DejaVuSans-Bold.ttf','DejaVuSans-Bold.ttf','dejavu/DejaVuSansBold.ttf','DejaVuSansBold.ttf'), + FS_ITALIC =>array('dejavu/DejaVuSans-Oblique.ttf','DejaVuSans-Oblique.ttf','dejavu/DejaVuSansOblique.ttf','DejaVuSansOblique.ttf'), + FS_BOLDITALIC =>array('dejavu/DejaVuSans-BoldOblique.ttf','DejaVuSans-BoldOblique.ttf','dejavu/DejaVuSansBoldOblique.ttf','DejaVuSansBoldOblique.ttf') ), FF_DV_SANSSERIFMONO => array( - FS_NORMAL =>array('DejaVuSansMono.ttf','DejaVuMonoSans.ttf'), - FS_BOLD =>array('DejaVuSansMono-Bold.ttf','DejaVuMonoSansBold.ttf'), - FS_ITALIC =>array('DejaVuSansMono-Oblique.ttf','DejaVuMonoSansOblique.ttf'), - FS_BOLDITALIC =>array('DejaVuSansMono-BoldOblique.ttf','DejaVuMonoSansBoldOblique.ttf') ), + FS_NORMAL =>array('dejavu/DejaVuSansMono.ttf','DejaVuSansMono.ttf','dejavu/DejaVuMonoSans.ttf','DejaVuMonoSans.ttf'), + FS_BOLD =>array('dejavu/DejaVuSansMono-Bold.ttf','DejaVuSansMono-Bold.ttf','dejavu/DejaVuMonoSansBold.ttf','DejaVuMonoSansBold.ttf'), + FS_ITALIC =>array('dejavu/DejaVuSansMono-Oblique.ttf','DejaVuSansMono-Oblique.ttf','dejavu/DejaVuMonoSansOblique.ttf','DejaVuMonoSansOblique.ttf'), + FS_BOLDITALIC =>array('dejavu/DejaVuSansMono-BoldOblique.ttf','DejaVuSansMono-BoldOblique.ttf','dejavu/DejaVuMonoSansBoldOblique.ttf','DejaVuMonoSansBoldOblique.ttf') ), FF_DV_SANSSERIFCOND => array( - FS_NORMAL =>array('DejaVuSansCondensed.ttf','DejaVuCondensedSans.ttf'), - FS_BOLD =>array('DejaVuSansCondensed-Bold.ttf','DejaVuCondensedSansBold.ttf'), - FS_ITALIC =>array('DejaVuSansCondensed-Oblique.ttf','DejaVuCondensedSansOblique.ttf'), - FS_BOLDITALIC =>array('DejaVuSansCondensed-BoldOblique.ttf','DejaVuCondensedSansBoldOblique.ttf') ), + FS_NORMAL =>array('dejavu/DejaVuSansCondensed.ttf','DejaVuSansCondensed.ttf','dejavu/DejaVuCondensedSans.ttf','DejaVuCondensedSans.ttf'), + FS_BOLD =>array('dejavu/DejaVuSansCondensed-Bold.ttf','DejaVuSansCondensed-Bold.ttf','dejavu/DejaVuCondensedSansBold.ttf','DejaVuCondensedSansBold.ttf'), + FS_ITALIC =>array('dejavu/DejaVuSansCondensed-Oblique.ttf','DejaVuSansCondensed-Oblique.ttf','dejavu/DejaVuCondensedSansOblique.ttf','DejaVuCondensedSansOblique.ttf'), + FS_BOLDITALIC =>array('dejavu/DejaVuSansCondensed-BoldOblique.ttf','DejaVuSansCondensed-BoldOblique.ttf','dejavu/DejaVuCondensedSansBoldOblique.ttf','DejaVuCondensedSansBoldOblique.ttf') ), FF_DV_SERIF => array( - FS_NORMAL =>array('DejaVuSerif.ttf'), - FS_BOLD =>array('DejaVuSerif-Bold.ttf','DejaVuSerifBold.ttf'), - FS_ITALIC =>array('DejaVuSerif-Italic.ttf','DejaVuSerifItalic.ttf'), - FS_BOLDITALIC =>array('DejaVuSerif-BoldItalic.ttf','DejaVuSerifBoldItalic.ttf') ), + FS_NORMAL =>array('dejavu/DejaVuSerif.ttf','DejaVuSerif.ttf'), + FS_BOLD =>array('dejavu/DejaVuSerif-Bold.ttf','DejaVuSerif-Bold.ttf','dejavu/DejaVuSerifBold.ttf','DejaVuSerifBold.ttf'), + FS_ITALIC =>array('dejavu/DejaVuSerif-Italic.ttf','DejaVuSerif-Italic.ttf','dejavu/DejaVuSerifItalic.ttf','DejaVuSerifItalic.ttf'), + FS_BOLDITALIC =>array('dejavu/DejaVuSerif-BoldItalic.ttf','DejaVuSerif-BoldItalic.ttf','dejavu/DejaVuSerifBoldItalic.ttf','DejaVuSerifBoldItalic.ttf') ), FF_DV_SERIFCOND => array( - FS_NORMAL =>array('DejaVuSerifCondensed.ttf','DejaVuCondensedSerif.ttf'), - FS_BOLD =>array('DejaVuSerifCondensed-Bold.ttf','DejaVuCondensedSerifBold.ttf'), - FS_ITALIC =>array('DejaVuSerifCondensed-Italic.ttf','DejaVuCondensedSerifItalic.ttf'), - FS_BOLDITALIC =>array('DejaVuSerifCondensed-BoldItalic.ttf','DejaVuCondensedSerifBoldItalic.ttf') ), + FS_NORMAL =>array('dejavu/DejaVuSerifCondensed.ttf','DejaVuSerifCondensed.ttf','dejavu/DejaVuCondensedSerif.ttf','DejaVuCondensedSerif.ttf'), + FS_BOLD =>array('dejavu/DejaVuSerifCondensed-Bold.ttf','DejaVuSerifCondensed-Bold.ttf','dejavu/DejaVuCondensedSerifBold.ttf','DejaVuCondensedSerifBold.ttf'), + FS_ITALIC =>array('dejavu/DejaVuSerifCondensed-Italic.ttf','DejaVuSerifCondensed-Italic.ttf','dejavu/DejaVuCondensedSerifItalic.ttf','DejaVuCondensedSerifItalic.ttf'), + FS_BOLDITALIC =>array('dejavu/DejaVuSerifCondensed-BoldItalic.ttf','DejaVuSerifCondensed-BoldItalic.ttf','dejavu/DejaVuCondensedSerifBoldItalic.ttf','DejaVuCondensedSerifBoldItalic.ttf') ), /* Placeholders for defined fonts */