beamerinnerthemefancy.sty 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. % Copyright 2007 by Marco Barisione
  2. %
  3. % This file may be distributed and/or modified
  4. %
  5. % 1. under the LaTeX Project Public License and/or
  6. % 2. under the GNU Public License.
  7. \mode<presentation>
  8. % Use alternative title page style.
  9. \DeclareOptionBeamer{alternativetitlepage}[true]{\def\beamer@fancy@alternativetitlepage{#1}}
  10. % Logo to use in the alternative title page.
  11. \def\beamer@fancy@titlepagelogo{}
  12. \DeclareOptionBeamer{titlepagelogo}{\def\beamer@fancy@titlepagelogo{#1}}
  13. % Bullet shape.
  14. \DeclareOptionBeamer{bullet}{\def\beamer@fancy@bullet{#1}}
  15. \ExecuteOptionsBeamer{alternativetitlepage=false,bullet=square}
  16. \ProcessOptionsBeamer
  17. % Colors.
  18. \setbeamercolor*{lineup}{parent=palette primary}
  19. \setbeamercolor*{linemid}{parent=palette secondary}
  20. \setbeamercolor*{linebottom}{parent=palette tertiary}
  21. \setbeamercolor*{title page header}{parent=palette quaternary}
  22. % Lengths.
  23. \newlength{\beamer@fancy@lineup}
  24. \setlength{\beamer@fancy@lineup}{.025\paperheight}
  25. \newlength{\beamer@fancy@linemid}
  26. \setlength{\beamer@fancy@linemid}{.015\paperheight}
  27. \newlength{\beamer@fancy@linebottom}
  28. \setlength{\beamer@fancy@linebottom}{.01\paperheight}
  29. % Margins.
  30. \newlength{\beamer@fancy@normalmargin}
  31. \setlength{\beamer@fancy@normalmargin}{.06\paperwidth}
  32. \setbeamersize{text margin left=\beamer@fancy@normalmargin}
  33. \setbeamersize{text margin right=\beamer@fancy@normalmargin}
  34. \setlength\leftmargini{.6\beamer@fancy@normalmargin}
  35. \setlength\leftmarginii{.6\beamer@fancy@normalmargin}
  36. \setlength\leftmarginiii{.6\beamer@fancy@normalmargin}
  37. % Normal title page.
  38. \defbeamertemplate*{title page normal}{fancy theme}[1][]
  39. {
  40. \vbox{}
  41. \vfill
  42. \begin{centering}
  43. \begin{beamercolorbox}[wd=\paperwidth,sep=8pt,center,#1]{title page header}
  44. \usebeamerfont{title}\inserttitle\par%
  45. \ifx\insertsubtitle\@empty%
  46. \else%
  47. \vskip0.25em%
  48. {\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}%
  49. \fi%
  50. \end{beamercolorbox}%
  51. \vskip1em\par
  52. \begin{beamercolorbox}[sep=8pt,center,#1]{author}
  53. \usebeamerfont{author}\insertauthor
  54. \end{beamercolorbox}
  55. \begin{beamercolorbox}[sep=8pt,center,#1]{institute}
  56. \usebeamerfont{institute}\insertinstitute
  57. \end{beamercolorbox}
  58. \begin{beamercolorbox}[sep=8pt,center,#1]{date}
  59. \usebeamerfont{date}\insertdate
  60. \end{beamercolorbox}\vskip0.5em
  61. {\usebeamercolor[fg]{titlegraphic}\inserttitlegraphic\par}
  62. \end{centering}
  63. \vfill
  64. }
  65. % Alternative title page, you should use this in a frame with the [plain]
  66. % option.
  67. \defbeamertemplate*{title page alternative}{fancy theme}[1][]
  68. {
  69. {\parskip0pt\offinterlineskip%
  70. \hbox{\hskip-\Gm@lmargin\hbox{\vbox{%
  71. \@tempdima=\textwidth\textwidth=\paperwidth\hsize=\textwidth\def\\{,}\vbox{}\vskip-1.5ex%
  72. % Title.
  73. \begin{beamercolorbox}[wd=\paperwidth,ht=.4\paperheight,center,#1]{title page header}
  74. \usebeamerfont{title}\inserttitle\par%
  75. \ifx\insertsubtitle\@empty%
  76. \else%
  77. \vskip0.25em%
  78. {\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}%
  79. \fi%
  80. \vspace{.125\paperheight}%
  81. \end{beamercolorbox}%
  82. \vbox{}\vskip-\beamer@fancy@lineup%
  83. \vbox{}\vskip-\beamer@fancy@linemid%
  84. % First line.
  85. \hbox{%
  86. \begin{beamercolorbox}[wd=.2\paperwidth,ht=\beamer@fancy@lineup,dp=0pt]{}%
  87. \end{beamercolorbox}%
  88. \begin{beamercolorbox}[wd=.8\paperwidth,ht=\beamer@fancy@lineup,dp=0pt]{lineup}%
  89. \end{beamercolorbox}%
  90. }%
  91. \vbox{}\vskip0ex%
  92. % Second line.
  93. \hbox{%
  94. \begin{beamercolorbox}[wd=.1\paperwidth,ht=\beamer@fancy@linemid,dp=0pt]{}%
  95. \end{beamercolorbox}%
  96. \begin{beamercolorbox}[wd=.9\paperwidth,ht=\beamer@fancy@linemid,dp=0pt]{linemid}%
  97. \end{beamercolorbox}%
  98. }%
  99. % Third line.
  100. \hbox{%
  101. \begin{beamercolorbox}[wd=.5\paperwidth,ht=\beamer@fancy@linebottom,dp=0pt]{}%
  102. \end{beamercolorbox}%
  103. \begin{beamercolorbox}[wd=.5\paperwidth,ht=\beamer@fancy@linebottom,dp=0pt]{linebottom}%
  104. \end{beamercolorbox}%
  105. }%
  106. \vskip0pt%
  107. }}%
  108. \hskip-\Gm@rmargin%
  109. }}\hfil%
  110. %
  111. \begin{columns}
  112. \ifx\beamer@fancy@titlepagelogo\@empty%
  113. \column{\textwidth}
  114. \else
  115. \column{.5\textwidth}
  116. % Logo.
  117. \begin{centering}
  118. \vbox{}\vfill
  119. \includegraphics[height=.4\paperheight]{\beamer@fancy@titlepagelogo}
  120. \vfill
  121. \end{centering}
  122. \column{.5\textwidth}
  123. \fi
  124. % Authors, institute and date
  125. \vskip1em\par
  126. \begin{beamercolorbox}[sep=8pt,center,#1]{author}
  127. \usebeamerfont{author}\insertauthor
  128. \end{beamercolorbox}
  129. \begin{beamercolorbox}[sep=8pt,center,#1]{institute}
  130. \usebeamerfont{institute}\insertinstitute
  131. \end{beamercolorbox}
  132. \begin{beamercolorbox}[sep=8pt,center,#1]{date}
  133. \usebeamerfont{date}\insertdate
  134. \end{beamercolorbox}\vskip0.5em
  135. {\usebeamercolor[fg]{titlegraphic}\inserttitlegraphic\par}
  136. \end{columns}
  137. }
  138. \defbeamertemplate*{title page}{fancy}[1][]
  139. {
  140. \def\beamer@fancy@truetext{true}%
  141. \ifx\beamer@fancy@alternativetitlepage\beamer@fancy@truetext%
  142. \usebeamertemplate{title page alternative}%
  143. \else%
  144. \usebeamertemplate{title page normal}%
  145. \fi%
  146. }
  147. % Items.
  148. \defbeamertemplate{itemize item}{squarealt}%
  149. {\tiny\raise.5ex\hbox{\donotcoloroutermaths$\blacksquare$}}
  150. \defbeamertemplate{itemize subitem}{squarealt}%
  151. {\tiny\raise.4ex\hbox{\donotcoloroutermaths$\square$}}
  152. \defbeamertemplate{itemize subsubitem}{squarealt}%
  153. {\tiny\raise.3ex\hbox{\donotcoloroutermaths$\blacksquare$}}
  154. \defbeamertemplate{itemize item}{circlealt}%
  155. {\small\raise.2ex\hbox{\donotcoloroutermaths$\bullet$}}
  156. \defbeamertemplate{itemize subitem}{circlealt}%
  157. {\small\raise.1ex\hbox{\donotcoloroutermaths$\circ$}}
  158. \defbeamertemplate{itemize subsubitem}{circlealt}%
  159. {\scriptsize\raise.1ex\hbox{\donotcoloroutermaths$\bullet$}}
  160. \def\circletext{circle}
  161. \ifx\beamer@fancy@bullet\circletext
  162. \setbeamertemplate{items}[circlealt]
  163. \else
  164. \setbeamertemplate{items}[squarealt]
  165. \fi
  166. \mode<all>