Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
fonts_ttf.cxx File Reference

Detailed Description

View in nbviewer Open in SWAN
Usage of TTF fonts in web canvas.

One can load TTF font file and specify it for usage in the web canvas Produced drawing also can be saved in PDF files.

Functionality available only in web-based graphics

void fonts_ttf()
{
TString fontdir = TROOT::GetDataDir() + "/fonts/";
auto fontid = TWebCanvas::AddFont("UserBold", fontdir + "trebuc.ttf");
auto fontid_bold = TWebCanvas::AddFont("UserBold", fontdir + "trebucbd.ttf");
auto fontid_bold_italic = TWebCanvas::AddFont("UserBoldItalic", fontdir + "trebucbi.ttf");
auto fontid_italic = TWebCanvas::AddFont("UserItalic", fontdir + "trebucit.ttf");
if ((fontid < 0) || (fontid_bold < 0) || (fontid_bold_italic < 0) || (fontid_italic < 0))
::Error("fonts_ttf.cxx", "fail to load ttf fonts from %s", fontdir.Data());
auto c1 = new TCanvas("c1", "c1", 1000, 600);
if (!gROOT->IsBatch() && !c1->IsWeb())
::Warning("fonts_ttf.cxx", "macro will not work without enabling web-based canvas");
auto l1 = new TLatex(0.5, 0.8, "Custom font from trebuc.ttf");
l1->SetTextFont(fontid);
l1->SetTextAlign(22);
l1->SetTextSize(0.1);
c1->Add(l1);
auto l2 = new TLatex(0.5, 0.6, "Custom bold font from trebucbd.ttf");
l2->SetTextFont(fontid_bold);
l2->SetTextAlign(22);
l2->SetTextSize(0.1);
c1->Add(l2);
auto l3 = new TLatex(0.5, 0.4, "Custom bold italic font from trebucbi.ttf");
l3->SetTextFont(fontid_bold_italic);
l3->SetTextAlign(22);
l3->SetTextSize(0.1);
c1->Add(l3);
auto l4 = new TLatex(0.5, 0.2, "Custom italic font from trebucit.ttf");
l4->SetTextFont(fontid_italic);
l4->SetTextAlign(22);
l4->SetTextSize(0.1);
c1->Add(l4);
}
void Error(const char *location, const char *msgfmt,...)
Use this function in case an error occurred.
Definition TError.cxx:185
void Warning(const char *location, const char *msgfmt,...)
Use this function in warning situations.
Definition TError.cxx:229
#define gROOT
Definition TROOT.h:406
The Canvas class.
Definition TCanvas.h:23
To draw Mathematical Formula.
Definition TLatex.h:18
static const TString & GetDataDir()
Get the data directory in the installation. Static utility function.
Definition TROOT.cxx:3066
Basic string class.
Definition TString.h:139
const char * Data() const
Definition TString.h:376
static Font_t AddFont(const char *name, const char *ttffile, Int_t precision=2)
Add font to static list of fonts supported by the canvas Name specifies name of the font,...
return c1
Definition legend1.C:41
Author
Sergey Linev

Definition in file fonts_ttf.cxx.