\textrm and
\rmfamily, etc. are not hard-wired into LATEX; instead these
commands use the values of a number of parameters set by the document
class and packages. For example, \rmdefault is the name of the
default family selected by \textrm and \rmfamily. Thus to set a
document in Adobe Times, Helvetica and Courier, the document designer
specifies:
\renewcommand{\rmdefault}{ptm}
\renewcommand{\sfdefault}{phv}
\renewcommand{\ttdefault}{pcr}
\encodingdefault
\familydefault
\seriesdefault
\shapedefault
The encoding, family, series and shape of the main body font. By
default these are OT1, \rmdefault, m and n. Note that since
the default family is \rmdefault, this means that changing
\rmdefault will change the main body font of the document.
\rmdefault
\sfdefault
\ttdefault
The families selected by \textrm, \rmfamily, \textsf,
\sffamily, \texttt and \ttfamily. By default these are cmr,
cmss and cmtt.
\bfdefault
\mddefault
The series selected by \textbf, \bfseries, \textmd and
\mdseries. By default these are bx and m.
These values are suitable for the default families used. If other
fonts are used as standard document fonts (for example, certain
PostScript fonts) it might be necessary to adjust the value of
\bfdefault to b since only a few such families have a `bold
extended' series. An alternative (taken for the fonts provided by
psnfss) is to define silent substitutions from bx series to b
series with special \DeclareFontShape declarations and the ssub
size function, see Section 4.4.
\itdefault
\sldefault
\scdefault
\updefault
The shapes selected by \textit, \itshape, \textsl, \slshape,
\textsc, \scshape, \textup and \upshape. By default these are
it, sl, sc and n.
Note that there are no parameters for the size commands. These should
be defined directly in class files, for example:
\renewcommand{\normalsize}{\fontsize{10}{12}\selectfont}
More elaborate examples (setting additional parameters when the text
size is changed) can be found in classes.dtx the source
documentation for the classes article, report, and book.