Hi Martin, Before the introduction of TLatex, TPostScript interpreted some special symbols as escape characters to produce greek symbols, sub/superscripts, etc. I have still kept this convention for TText objects. For more explanations see the class TAttText at: http://root.cern.ch/root/html300/TAttText.html I strongly encourage the use of the more powerful class TLatex instead of the old convention. TLatex has the big advantage to produce the same result on the screen and on the Postscript file. Note that TLatex objects are automatically recognized in histogram titles, axis titles, TPaves, etc. In the $ROOTSYS/tutorials, you will find numerous examples showing how to use the TLatex class. Also see: http://root.cern.ch/root/html300/TLatex.html Rene Brun Martin Woudstra wrote: > > Hi Rene, > > I am using version 3.00 on HP-UX-10.20-aCC (sorry for forgetting). > > I tried your macro and indeed it works for me too. In fact, I do not use the > TLatex class directly, I use TText to draw one line of text on screen (vertically). > > TText gives the behaviour I described. For example: > > TText text( 0.2, 0.3, "text #1"); > text.Draw(); > gPad->SaveAs("testHash.ps") > > Shows the # on screen, but not on ps output (just shows "text 1"). > Maybe I should not be using TText? What should I use? > > Regards, > Martin. > > Rene Brun wrote: > > > > Hi Martin, > > > > Unfortunately, you do not specify which version of Root you use. > > > > With the production version, you do not need any escape character for "#". > > The character is only recognized where it makes sense, eg #alpha, #int, etc > > See an example below with the corresponding Postscript output in the attachment. > > > > { > > gROOT->Reset(); > > enum colors {bg, fg, red, green, blue, yellow, magenta, cyan}; > > TCanvas * c1 = new TCanvas("c1","Simple Formulae",700,500); > > > > // create a 1-dim function object (class TF1) > > > > TF1* exp = new TF1("exp","[0]*exp(-[1]*x)", 0, 10); > > Double_t a1 = 2.; > > Double_t lambda = 0.5; > > exp->SetParameters(a1, lambda); > > exp->SetLineColor(red); exp->SetLineWidth(6); > > exp->Draw(); > > > > char buf[100]; > > sprintf(buf, "#int^{4}_{2} a_{1} e^{-#lambda * x} = %f",exp->Integral(2,4)); > > > > // create a Latex object and let it print the formula > > > > TLatex latex; > > latex.SetTextColor(red); > > latex.SetTextSize(0.08); > > latex.DrawLatex(3.5 ,1.3, buf); > > > > // Create another function (class TF1) and overlay it > > > > TF1* fesin = new TF1("fesin", > > "[0]*exp(-[1]*x) * abs(sin(2*x))", 0, 10); > > fesin->SetParameters(a1, lambda); > > fesin->SetLineColor(blue); fesin->SetLineWidth(6); > > fesin->Draw("SAME"); > > > > latex.SetTextColor(blue); > > latex.DrawLatex(3.5 ,0.8, "a_{1} e^{-#lambda * x} abs(sin(2x))"); > > latex.DrawLatex(3.5 ,0.4, "comment #3"); > > > > c1->SetGridx(); > > c1->SetGridy(); > > c1->Update(); > > } > > > > Rene Brun > > > > Martin Woudstra wrote: > > > > > > Hello rooters, > > > > > > Does anybody know how can I print out the '#' character in TLatex? > > > The '#' appears on the screen, but not in the Postscript output file. > > > > > > Since '#' is an escape character in TLatex, I guessed that getting > > > a '#' might be by '##', but this doesn't work either. Two '#'s appear > > > on screen and none in the Postscript output file. > > > > > > Is the '#' supported in the Postscript output of TLatex (or was it overlooked maybe)? > > > If not yet, I suggest the '##' syntax. > > > > > > Regards, > > > Martin. > > > > -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > Name: c1.ps > > c1.ps Type: Postscript Document (application/postscript) > > Encoding: 8bit
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:45 MET