Source

beamer / doc / beameruserguide.tex

Full commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
\documentclass{article}

% Copyright 2003 by Till Tantau <tantau@cs.tu-berlin.de>.
%
% This program can be redistributed and/or modified under the terms
% of the LaTeX Project Public License Distributed from CTAN
% archives in directory macros/latex/base/lppl.txt.

\usepackage{pgf}
\usepackage[left=2.5cm,right=2.5cm,top=2.5cm,bottom=2.5cm,nohead]{geometry}
\usepackage{amsmath,amssymb}
\usepackage[pdfborder={0 0 0}]{hyperref}

\pgfdeclareimage{themebars}{6.66666cm}{5cm}{themebars}
\pgfdeclareimage{themebars2}{6.66666cm}{5cm}{themebars2}
\pgfdeclareimage{themeboxes}{6.66666cm}{5cm}{themeboxes}
\pgfdeclareimage{themeboxes2}{6.66666cm}{5cm}{themeboxes2}
\pgfdeclareimage{themeclassic}{6.66666cm}{5cm}{themeclassic}
\pgfdeclareimage{themeclassic2}{6.66666cm}{5cm}{themeclassic2}
\pgfdeclareimage{themelined}{6.66666cm}{5cm}{themelined}
\pgfdeclareimage{themelined2}{6.66666cm}{5cm}{themelined2}
\pgfdeclareimage{themeplain}{6.66666cm}{5cm}{themeplain}
\pgfdeclareimage{themeplain2}{6.66666cm}{5cm}{themeplain2}
\pgfdeclareimage{themesidebar}{6.66666cm}{5cm}{themesidebar}
\pgfdeclareimage{themesidebar2}{6.66666cm}{5cm}{themesidebar2}
\pgfdeclareimage{themesidebardark}{6.66666cm}{5cm}{themesidebardark}
\pgfdeclareimage{themesidebardark2}{6.66666cm}{5cm}{themesidebardark2}
\pgfdeclareimage{themesidebartab}{6.66666cm}{5cm}{themesidebartab}
\pgfdeclareimage{themesidebartab2}{6.66666cm}{5cm}{themesidebartab2}
\pgfdeclareimage{themesidebardarktab}{6.66666cm}{5cm}{themesidebardarktab}
\pgfdeclareimage{themesidebardarktab2}{6.66666cm}{5cm}{themesidebardarktab2}
\pgfdeclareimage{themesplit}{6.66666cm}{5cm}{themesplit}
\pgfdeclareimage{themesplit2}{6.66666cm}{5cm}{themesplit2}
\pgfdeclareimage{themesplitcondensed}{6.66666cm}{5cm}{themesplitcondensed}
\pgfdeclareimage{themesplitcondensed2}{6.66666cm}{5cm}{themesplitcondensed2}
\pgfdeclareimage{themetree}{6.66666cm}{5cm}{themetree}
\pgfdeclareimage{themetree2}{6.66666cm}{5cm}{themetree2}
\pgfdeclareimage{themetreebars}{6.66666cm}{5cm}{themetreebars}
\pgfdeclareimage{themetreebars2}{6.66666cm}{5cm}{themetreebars2}

\def\beamer{\textsc{beamer}}
\def\pgf{\textsc{pgf}}
\def\pstricks{\textsc{pstricks}}
\def\bs{$\backslash$}

\def\Theme#1{\par\bigskip\noindent\textbf{Theme \texttt{#1}}\par}
\def\ClassOption#1{\par\bigskip\noindent\textbf{Class Option \texttt{#1}}\par}
\def\Environment#1{\par\bigskip\noindent\textbf{Environment \texttt{#1}}\par}
\def\Command#1{\par\bigskip\noindent\textbf{Command \texttt{#1}}\par}
\long\def\Parameters#1{\medskip\noindent Parameters:
  \begin{enumerate}\itemsep=0pt\parskip=0pt
    #1
  \end{enumerate}}
\long\def\Description#1{\unskip\medskip\noindent Description: #1}
\def\Example{\par\medskip\noindent Example: }

\begin{document}

\title{User's Guide to the Beamer Class, Version 0.90\\
\Large\href{http://latex-beamer.sourceforge.net}{\texttt{http://latex-beamer.sourceforge.net}}}
\author{Till Tantau\\
  \href{mailto:tantau@users.sourceforge.net}{\texttt{tantau@users.sourceforge.net}}}

\maketitle

\tableofcontents



\section{Introduction}


\subsection{Overview}

This user's guide explains the functionality of the \beamer\ class.
It is a \LaTeX\ class that allows you to create a beamer
presentation. It can also be used to create slides. It behaves
similarly to other packages like \textsc{prosper}, but has the
advantage that it works together directly with \texttt{pdflatex}, but
also with \texttt{dvips}.

To use the \beamer\ class, proceed as follows:
\begin{enumerate}
\item
  Specify \texttt{beamer} as document class instead of
  \texttt{article}.
\item
  Structure your \LaTeX\ text using \texttt{section} and
  \texttt{subsection} commands.
\item
  Place the text of the individual slides inside \texttt{frame}
  commands.
\item
  Run \texttt{pdflatex} on the text (or \texttt{latex},
  \texttt{dvips}, and \texttt{ps2pdf}).
\end{enumerate}

The \beamer\ class has several useful features: You don't need any
external programs to use it other than \texttt{pdflatex}, but it works
also with \texttt{dvips}. You can easily and intuitively create
sophisticated overlays. Finally, you can easily change the whole slide
theme or only parts of it. The following code shows a typical usage of
the class.

\begin{verbatim}
\documentclass{beamer}

\usepackage{beamerthemesplit}

\title{Example Presentation Created with the Beamer Package}
\author{Till Tantau}
\date{\today}

\begin{document}

\frame{\titlepage}

\section[Outline]{}
\frame{\tableofcontents}

\section{Introduction}
\subsection{Overview of the Beamer Class}
\frame
{
  \frametitle{Features of the Beamer Class}

  \begin{itemize}
  \item<1-> Normal LaTeX class.
  \item<2-> Easy overlays.
  \item<3-> No external programs needed.      
  \end{itemize}
}
\end{document}
\end{verbatim}

Run \texttt{pdflatex} on this code (twice) and then use, for example, the
Acrobat Reader to present the resulting \texttt{.pdf} file in a
presentation. You can also, alternatively, use \texttt{dvips}; see
Section~\ref{section-postscript} for details.

As can be seen, the text looks almost like a normal \LaTeX\ text. The
main difference is the usage of the \verb!\frame! command. This
command takes one parameter, which is the text that should be shown on
the frame. Typically, the contents of a frame is shown on a single
slide. However, in case you use overlay commands inside a frame, a
single frame command may produce several slides. An example is the
last frame in the above example. There, the \verb!\item! commands
are followed by \emph{overlay specifications} like \verb!<1->!,
which means ``from slide 1 on.'' Such a specification causes the item
to be shown only on the specified slides of the frame (see
Section~\ref{section-overlay} for details). In the above example, a
total of five slides are produced: a title page slide, an outline
slide, a slide showing only the first of the three items, a slide
showing the first two of them, and a slide showing all three items.
 
To structure your text, you can use the commands \verb!\section! and
\verb!\subsection!. These commands will not only create a table of
contents, but will also create navigation bars.



\subsection{Getting Started: Installation}

To use the beamer class, you just need to put the files of the
\beamer\ package in a directory that is read by \TeX. To uninstall the
class, simply remove these files once more. The same is true of the
\textsc{pgf} package, which you will also need.


Unfortunately, there are different ways of making \TeX\ ``aware'' of
the files in the \beamer\ package. Which way you should choose depends
on how permanently you intend to use the class.


\subsubsection{Installing Debian and Red Hat Packages}

Currently, there are no out-of-the-box Debian or Red Hat packages of
the beamer class available.



\subsubsection{Temporary Installation}

If you only wish to install the beamer class for a quick appraisal, do
the following: Obtain the latest source version (ending
\texttt{.tar.gz}) of the \beamer\ package from 
\href{http://sourceforge.net/projects/latex-beamer/}{\texttt{http://sourceforge.net/projects/latex-beamer/}}
(most likely, you have already done this). Next, you also need the
\textsc{pgf} package, which can be found, for example, at 
\href{http://www.ctan.org/tex-archive/graphics/pgf/}{\texttt{http://www.ctan.org/tex-archive/graphics/pgf/}}.

In both cases, the packages contain a bunch of files (for the \beamer\
class, \texttt{beamer.cls} is one of these files and happens to be the
most important one, for the \textsc{pgf} package \texttt{pgf.sty} is
the most important file). 
Place all files in two directories. For example,
\texttt{/home/tantau/beamer/} and \texttt{/home/tantau/pgf/} would
work fine for me. Then setup the environment variable called
\texttt{TEXINPUTS} to be the following string (how exactly this is
done  depends on your operating system and shell):

\begin{verbatim}
.:/home/tantau/beamer:/home/tantau/pgf:
\end{verbatim}

Naturally, if the \texttt{TEXINPUTS} variable is already defined
differently, you should \emph{add} the two directories to the list. Do
not forget to place a colon at the end (corresponding to an empty
path), which will include all standard directories.



\subsubsection{Installation in a texmf Tree}

For a more permanent installation, you can place the files of the
\beamer\ package and of the \textsc{pgf} package (see the previous
subsection on how to obtain them) in an appropriate \texttt{texmf}
tree. 

When you ask \TeX\ to use a certain class or package, it usually looks
for the necessary files in so-called \texttt{texmf} trees. These trees
are simply huge directories that contain these files. By default,
\TeX\ looks for files in three different \texttt{texmf} trees:
\begin{itemize}
\item
  The root \texttt{texmf} tree, which is usually located at
  \texttt{/usr/share/}, \verb!c:\texmf\!, or\\
  \verb!c:\Program Files\TeXLive\texmf\!.
\item
  The local  \texttt{texmf} tree, which is usually located at
  \texttt{/usr/local/share/}, \verb!c:\localtexmf\!, or\\
  \verb!c:\Program Files\TeXLive\texmf-local\!.
\item
  Your personal  \texttt{texmf} tree, which is located in your home
  directory.   
\end{itemize}

You should install the packages either in the local tree or in
your personal tree, depending on whether you have write access to the
local tree. Installation in the root tree can cause problems, since an
update of the whole \TeX\ installation will replace this whole tree.

Inside whatever \texttt{texmf} directory you have chosen, create
the sub-sub-sub-directories
\begin{itemize}
\item
  \texttt{texmf/tex/latex/beamer} and
\item
  \texttt{texmf/tex/latex/pgf}
\end{itemize}
and place all files in these two directories.

Finally, you need to rebuild \TeX's filename database. This done by
running the command  \texttt{texhash} or \texttt{mktexlsr} (they are
the same). In MikTeX, there is a menu option to do this.

\vskip1em
For a more detailed explanation of the standard installation process
of packages, you might wish to consult
\href{http://www.ctan.org/installationadvice/}{\texttt{http://www.ctan.org/installationadvice/}}.
However, note that the \beamer\ package does not come with a
\texttt{.ins} file (simply skip that part).



\subsection{Testing the Installation}

To test your installation, copy the file \texttt{beamerexample.tex}
from the documentation subdirectory to some place where you usually
create presentations. Then run the command \texttt{pdflatex} twice on
the file and check whether the resulting \texttt{beamerexample.pdf}
looks correct. If so, you are all set.



\section{Workflow}

This section presents a possible workflow for creating a beamer
presentation and possibly a handout to go along with it. Technical
questions are addressed, like which programs to call with 
which parameters, and hints are given on how to create a
presentation. If you have already created numerous presentations, you
may wish to skip the first of the following steps 
and only have a look at how to convert the \texttt{.tex} file into a
\texttt{.pdf} of \texttt{.ps} file.


\subsection{Step Zero: Know the Time Constraints}

When you start to create a presentation, the very first thing you
should worry about is the amount of time you have for your
presentation. Depending on the occasion, this can
be anything between 2 minutes and two hours. A simple rule for the
number of frames is that you should have at most one frame per
minute.

In most situations, you will have less time for your presentation that
you would like. \emph{Do not try to squeeze more into a
  presentation than time allows for.} No matter how important some
detail seems to you, it is better to leave it out, but get the main
message across, than getting neither the main message nor the detail
across. 

In many situations, a quick appraisal of how much time you have will
show that you won't be able to mention certain details. Knowing this can
save you hours of work on preparing slides that you would have to remove
later anyway.




\subsection{Step One: Setup the Files}

It is advisable that you create a folder for each
presentation. Even though your presentation will usually reside in a
single file, \TeX\ produces so many extra files that things can easily
get very confusing otherwise. The folder's name should ideally start
with the date of your talk in ISO format (like 2003-12-25 for a
Christmas talk), followed by some reminder text of what the talk is
all about. Putting the date at the front in this format causes your
presentation folders to be listed nicely when you have several of them
residing in one directory. If you use an extra directory for each
presentation, you can call your main file
\verb!main.tex!. 

To create an initial \verb!main.tex! file for your talk, copy an
existing file (like the file \verb!beamerexample.tex! that comes along
with the contribution) and delete everything that is not going to be
part of your talk. Adjust the \verb!\author{}! and other fields as 
appropriate. 





\subsection{Step Two: Structure You Presentation}

With the time constraints in mind, make a mental inventory of the
things you can reasonably talk about within the time available. Then
categorize the inventory into sections and subsections. Put
\verb!\section{}! and \verb!\subsection{}! commands into the (more or
less empty) main file. Do not create any frames until you
have a first working version of a possible table of contents. Do not
feel afraid to change it later on as you work on the talk.

You should not use more than four sections and not less than two. Even
four sections are usually too much, unless they follow a very easy
pattern. Five and more sections are simply too hard to remember for the
audience. After all, when you present the table of contents, the
audience will not yet really be able to grasp the importance and
relevance of the different sections and will most likely have
forgotten them by the time you reach them.

Ideally, a table of contents should be understandable by itself. In
particular, it should be comprehensible \emph{before} someone has
heard your talk. Keep section and subsection titles self-explaining.

Both the sections and the subsections should follow a logical
pattern. Begin with an explanation of what your talk is all about. (Do
not assume that everyone knows this. The Ignorant Audience Law states:
The audience always knows less than you think it should know, even if
you take the Ignorant Audience Law into account.) Then explain what
you or someone else has found out concerning the subject
matter. Always conclude your talk with a summary that repeats the main
message of the talk in a short and simple way. People pay most
attention at the beginning and at the end of talks. The summary is
your ``second chance'' to get across a message.




\subsection{Step Three: Creating a PDF or PostScript File}

Once a first version of the structure is finished, you should create a
first PDF or PostScript file of your (still empty) talk. This file
will only contain the title page and the table of contents. The file
might  look like this:

\begin{verbatim}
\documentclass{beamer}
% This is the file main.tex

\usepackage{beamerthemesplit}

\title{Example Presentation Created with the Beamer Package}
\author{Till Tantau}
\date{\today}

\begin{document}

\frame{\titlepage}

\section[Outline]{}
\frame{\tableofcontents}

\section{Introduction}
\subsection{Overview of the Beamer Class}
\subsection{Overview of Similar Classes}

\section{Usage}
\subsection{...}
\subsection{...}

\section{Examples}
\subsection{...}
\subsection{...}

\end{document}
\end{verbatim}



\subsubsection{Creating PDF}

To create a \texttt{PDF} version of this file, run the program
\verb!pdflatex! on \verb!main.tex! at least twice. Your need to run it
twice, so that \TeX\ can create the table of contents. In the
following example, the greater-than sign is the prompt.

\begin{verbatim}
> pdflatex main.tex
    ... lots of output ...
> pdflatex main.tex
    ... lots of output ...
\end{verbatim}


You can next use a program like the Acrobat Reader or \texttt{xpdf}
to view the resulting presentation.

\begin{verbatim}
> acroread main.pdf
\end{verbatim}

When printing a presentation, make sure that the option ``expand small
pages to paper size'' is enabled. This is necessary, because slides are
only 128mm times 96mm.



\subsubsection{Creating PostScript}
\label{section-postscript}

To create a PostScript version, you should first ascertain that the
\textsc{hyperref} package (which is automatically loaded by the
\beamer\ class) uses the option \texttt{dvips} or some compatible
option, see the documentation of the \textsc{hyperref} package for
details. Whether this is the case depends on the contents of your
local \texttt{hyperref.cfg} file. You can enforce the usage of this
option by passing \texttt{dvips} or a compatible option to the
\beamer\ class (write \verb!\documentclass[dvips]{beamer}!), which
will pass this option on to the \textsc{hyperref} package.

You can then run \verb!latex! twice, followed by \verb!dvips!.

\begin{verbatim}
> latex main.tex
    ... lots of output ...
> latex main.tex
    ... lots of output ...
> dvips -P pdf main.dvi
\end{verbatim}

The option (\verb!-P pdf!) tells \verb!dvips! to use
Type~1 outline fonts instead of the usual Type~3 bitmap fonts. You may
wish to omit this option if there is a problem with it. 

If you wish each slide to completely fill a letter-sized page, use the
following commands instead:

\begin{verbatim}
> dvips -P pdf -tletter main.dvi -o main.temp.ps
> psnup -1 -W128mm -H96mm -pletter main.temp.ps main.ps
\end{verbatim}

For A4-sized paper, use:

\begin{verbatim}
> dvips -P pdf -ta4 main.dvi -o main.temp.ps
> psnup -1 -W128mm -H96mm -pa4 main.temp.ps main.ps
\end{verbatim}

In order to create a white margin around the whole page (which is sometimes
useful for printing), add the option \verb!-m 1cm! to the options of
\verb!psnup!. 

To put two or four slides on one page, use \verb!-2!, respectively
\verb!-4! instead of \verb!-1! as the first parameter for
\verb!psnup!. In this case, you may wish to add the option
\verb!-b 1cm! to add a bit of space around the individual slides.

You can convert a PostScript file to a pdf file using

\begin{verbatim}
> ps2pdf main.ps main.pdf
\end{verbatim}



\subsection{Step Four: Create Frames}

Once the table of contents looks satisfactory, start creating frames
for your presentation. In the following, some guidelines that I stick
to are given on what to put on slides and what not to put. You can
certainly ignore any of these guideline, but you should be aware of
it when you ignore a rule and you should be able to justify it to
yourself. 


\subsubsection{Guidelines on What to Put on a Frame}

\begin{itemize}
\item
  A frame with too little on it is better than a
  frame with too much on it.
\item
  Do not assume that everyone in the audience is an expert on the
  subject matter. (Remember the Ignorant Audience Law.) Even if the
  people listening to you should be experts, they may last have heard
  about things you consider obvious several years ago. You should
  always have the time for a quick reminder of what exactly a
  ``semantical complexity class'' or an ``$\omega$-complete partial
  ordering'' is.
\item
  Never put anything on a slide that you are not going to explain
  during the talk, not even to impress anyone with how
    complicated your subject matter really is. However, you may
  explain things that are not on a slide.
\item
  Keep it simple. Typically, your audience will see a slide for less
  than 50 seconds. They will not have the time to puzzle through long
  sentences or complicated formulas.
\end{itemize}



\subsubsection{Guidelines on Text}

\begin{itemize}
\item
  Put a title on each frame. The title explains the contents of the
  frame to people who did not follow all details on the slide.
\item
  Ideally, titles on consecutive frames should ``tell a story'' all by
  themselves.
\item
  \emph{Never} use a smaller font size to ``squeeze more on a frame.''
\item
  Prefer enumerations and itemize environments over plain text. Do not
  use long sentences.
\item
  Text and numbers in figures should have the \emph{same} size as
  normal text. Illegible numbers on axes usually ruin a chart and its
  message. 
\end{itemize}


\subsubsection{Guidelines on Graphics}

\begin{itemize}
\item
  Put (at least) one graphic on each slide, whenever
  possible. Visualizations help an audience enormously.
\item
  Usually, place graphics to the left of the text. (Use the
  \texttt{columns} environment.) 
\item
  Graphics should have the same typographic parameters as the
  text: Use the same fonts (at the same size) in graphics as in the
  main text. A small dot in a graphic should have exactly the same 
  size as a small dot in a text. The line width should be the same as
  the stroke width used in creating the glyphs of the font. For
  example, an 11pt non-bold Computer Modern font has a stroke width of
  0.4pt.
\item
  While bitmap graphics, like photos, can be much more colorful than the
  rest of the text, vector graphics should follow the same ``color
  logic'' as the main text (like black~= normal lines, red~= hilighted
  parts, green~= examples, blue~= structure).
\item
  Like text, you should explain everything that is shown on a
  graphic. Unexplained details make the audience puzzle whether this
  was something important that they have missed. Be careful when
  importing graphics from a paper or some other source. They usually
  have much more detail than you will be able to explain.
\end{itemize}

For technical hints on how to create graphics, see
Section~\ref{section-graphics}.


\subsubsection{Guidelines on Colors}

\begin{itemize}
\item
  Use colors sparsely. The prepared themes are already quite
  colorful (blue~= structure, red~= alert, green~= example). If you
  add more colors, you should have a \emph{very} good reason.
\item
  Be careful when using bright colors on white background,
  \emph{especially} when using green. What looks good on your monitor
  may look bad during a presentation due to the different ways
  monitors, beamers, and printers reproduce colors. Add lots of black
  to pure colors when you use them on bright backgrounds.
\item
  Maximize contrast. Normal text should be black on white or at least
  something very dark on something very bright. \emph{Never} do things
  like ``light green text on not-so-light green background.''
\item
  Background shadings decrease the legibility without increasing the
  information content. Do not add a background shading just because it
  ``somehow looks nicer.''
\item
  Inverse video (bright text on dark background) can be a problem
  during presentations in bright environments since only a small
  percentage of the presentation area is light up by the
  beamer. Inverse video is harder to reproduce on printouts and on
  transparencies. 
\end{itemize}


\subsubsection{Guidelines on Animations and Special Effects}

\begin{itemize}
\item
  Use animations to explain the dynamics of systems, algorithms, etc.
\item
  Do \emph{not} use animations just to attract the attention of your
  audience. This often distracts attention away from the main topic of the
  slide.
\item
  Do \emph{not} use distracting special effects like ``dissolving''
  slides unless you have a very good reason for using them. If you use
  them, use them sparsely. 
\end{itemize}



\subsection{Step Five: Test Your Presentation}

\emph{Always} test your presentation. For this, you should
vocalize or subvocalize your talk in a quite environment. Typically,
this will show that your talk is too long. You should then remove
parts of the presentation, such that it fits into the allotted time
slot. Do \emph{not} attempt to talk faster in order to squeeze the
talk into the given amount of time. You are almost sure to loose your
audience this way.

Do not try to create the ``perfect'' presentation immediately. Rather,
test and retest the talk and modify it as needed. 




\subsection{Step Six: Optionally Create a Handout}

Once your talk is fixed, you can create a handout, if this seems
appropriate. For this, use the class option \verb!handout! as
explained in Section~\ref{handout}. Typically, you might wish
to put several handout slides on one page. See
Section~\ref{section-postscript} on how to do this.






\section{Frames and Overlays}

\label{section-overlay}

A presentation consists of a series of frames. Each frame consists of
a series of slides. You create a frame using the command
\verb!\frame!. This command takes one parameter, namely the
contents of the frame. All of this text that is not tagged by overlay
specifications (see Section~\ref{subsection-overlay}) is shown on all
slides of the frame.  

\Command{frame}
\Parameters{
\item
  optional parameter in square brackets: a specification of slides to
  be shown, see subsection \ref{subsection-restriction} for details. 
\item
  the frame's contents.
}
\Example
\begin{verbatim}
\frame
{
  Some text...

  Some more...
}
\end{verbatim}

\Command{plainframe}
\Parameters{
\item
  optional parameter in square brackets: a specification of slides to
  be shown, see subsection \ref{subsection-restriction} for details. 
\item
  the frame's contents.
}
\Description{
  This command creates a frame in which the head lines, foot lines,
  and side bars are suppressed. This is useful for creating single
  frames with different head and foot lines or for creating frames
  showing big pictures that completely fill the frame.
  }
\Example A frame with a picture completely filling the frame:  
\begin{verbatim}
\pgfdeclareimage{bigimage}{}{9.6cm}{bigimagefilename}
\plainframe{\hfill\pgfuseimage{bigimage}\hfill}
\end{verbatim}

\Example A title page, in which the head and foot lines are replaced
by two graphics.
\begin{verbatim}
\usetitlepagetemplate{
  \beamerline{\pgfuseimage{toptitle}}
  \vskip0pt plus 1filll

  \begin{centering}
    \Large{\textbf{\inserttitle}}
    
    \insertdate
  \end{centering}

  \vskip0pt plus 1filll
  \beamerline{\pgfuseimage{bottomtitle}}
}

\begin{document}
\plainframe{\titlepage}
\end{verbatim}


\subsection{Components of a Frame}

Each frame consists of up to six components:
\begin{enumerate}\itemsep=0pt\parskip=0pt
\item a head line,
\item a foot line,
\item a left side bar,
\item a right side bar,
\item a frame title, and
\item some frame contents.
\end{enumerate}

A frame need not have all of these components. Usually, the first four
components are automatically setup by the theme you are
using. To change them, you must install an appropriate template, see
Section~\ref{section-head-templates} for the head and foot lines and
Section~\ref{section-sidebar-templates} for the side bars.

The frame title is shown prominently at the top of the frame. To
specify the title, use the command \verb!\frametitle!. You should end
the frame title with a period, if the title is a proper
sentence. Otherwise, there should not be a period.

\Command{frametitle}
\Parameters{
\item a title for the frame.
}
\Example
\begin{verbatim}
\frame{
  \frametitle{A Frame Title is Important.}

  Frame contents.
}
\end{verbatim}



\subsection{Commands with Overlay Specifications}
\label{subsection-overlay}

The number of slides in a frame is calculated automatically from the
overlay specifications inside the frame, but see below for how to
specify this number explicitly. The number is chosen to be
the maximum number mentioned in any overlay specification.
An overlay specification is a comma-separated list of slides and
ranges. Ranges are specified like this: \verb!2-5!, which
means slide two through to five. The start or the beginning of a range
can be omitted. For example, \verb!3-! means ``slides three, four,
five, and so on'' and \verb!-5! means the same as \verb!1-5!. A
complicated example is \verb!-3,6-8,10,12-15!, which selected the
slides 1, 2, 3, 6, 7, 8, 10, 12, 13, 14, and 15.

Overlay specifications can be written behind certain commands. If such
an overlay specification is present, the command will only ``take
effect'' on the specified slides. What exactly ``take effect'' means
depends on the command. Consider the following example.

\begin{verbatim}
\frame
{
  \textbf{This line is bold on all three slides.}
  \textbf<2>{This line is bold only on the second slide.}
  \textbf<3>{This line is bold only on the third slide.}
}
\end{verbatim}

For the command \verb!\textbf!, the overlay specification causes the
text to be set in boldface only on the specified slides. On all other
slides, the text is set in a normal font.

You cannot add an overlay specification to every command, but only to
those listed below. However, it is quite easy to redefine a
command such that it becomes ``overlay specification aware.''

For the following commands, adding an overlay specification causes the
command to be simply ignored on slides that are not included in the
specification: \verb!\textbf!, \verb!\textit!, \verb!\textsl!,
\verb!\textrm!, \verb!\textsf!, \verb!\color!, \verb!\alert!,
\verb!\structure!. If a command takes several arguments, like
\verb!\color!, the specification directly follows the command as in
the following example.

\begin{verbatim}
\frame
{
  \color<2-3>[rgb]{1,0,0} This text is red on slides 2 and 3, otherwise black.
}
\end{verbatim}

For the following commands, the effect of an overlay specification is
special:

\Command{only}
\Parameters{
\item a text
}
\Description{
  If an overlay specification is present, the text is inserted only
  into the specified slides. For other slides, the text is simply
  thrown away. In particular, it occupies no space.}
\Example \verb!\only<3->{Text inserted from slide 3 on.}!

There exists a variant of \verb!\only!, namely \verb!\pgfonly!, that
should be used inside \pgf\ pictures instead of \verb!\only!. The
command \verb!\pgfonly! inserts appropriate \verb!\ignorespaces!
commands that are needed by \pgf.

\Command{uncover}
\Parameters{
\item a text
}
\Description{
  If an overlay specification is present, the text is shown
  (``uncovered'') only on the specified slides. On other slides, the
  text still occupies space and it is still typeset, but it is not
  shown.}
\Example \verb!\uncover<3->{Text shown from slide 3 on.}!

\Command{alt}
\Parameters{
\item a slide specification in pointed brackets.
\item a main text
\item an alternative text
}
\Description{
  The main text is shown on the specified slides, otherwise the
  alternative text. The specification must always be present.}
\Example \verb!\alt<2>{On Slide 2}{Not on slide 2.}!

\Command{temporal}
\Parameters{
\item a slide specification in pointed brackets.
\item a text to be put on all slides before the specified slides
\item a text to be put on the specified slides
\item a text tot be put on all slides after the specified slides
}
\Description{
  This command alternates between three different texts, depending on
  whether the current slide is temporally before the specified
  slides, is one of the specified slides, or comes after them. If the
  specification is not an interval (that is, if it has a ``hole''),
  the ``hole'' is considered to be part of the before slides.}
\Example
\begin{verbatim}
  \temporal<3-4>{Shown on 1, 2}{Shown on 3, 4}{Shown 5, 6, 7, ...}
  \temporal<3,5>{Shown on 1, 2, 4}{Shown on 3, 5}{Shown 6, 7, 8, ...}
\end{verbatim}

For a useful application of the \verb!\temporal! command consider the
following example: 

\begin{verbatim}
\def\colorize<#1>{%
  \temporal<#1>{\color{structureshaded}}{\color{black}}{\color{shaded}}}

\frame{
  \begin{itemize}
    \colorize<1> \item First item.
    \colorize<2> \item Second item.
    \colorize<3> \item Third item.
    \colorize<4> \item Fourth item.
  \end{itemize}
}
\end{verbatim}


\Command{item}
\Description{
  Adding an overlay specification to an item in a list causes this
  item to be uncovered only on the specified slides. This is useful
  for creating lists that are uncovered piecewise. Note that you are
  not required to stick to an order in which items are uncovered.
  }
\Example
\begin{verbatim}
\frame
{
  \begin{itemize}
  \item<1-> First point, shown on all slides.
  \item<2-> Second point, shown on slide 2 and later.
  \item<2-> Third point, also shown on slide 2 and later.
  \item<3-> Fourth point, shown on slide 3.
  \end{itemize}
}

\frame
{
  \begin{enumerate}
  \item<3->[0.] A zeroth point, shown at the very end.
  \item<1-> The first an main point.
  \item<2-> The second point.
  \end{enumerate}
}
\end{verbatim}

In the following concluding example, a list is uncovered
item-wise. The last uncovered item is furthermore hilighted. 

\begin{verbatim}
\frame
{
  The advantages of the beamer class are
  \begin{enumerate}
  \item<1-> \alert<1>{It is easy to use.}
  \item<2-> \alert<2>{It is easy to extend.}
  \item<3-> \alert<3>{It works together with \texttt{pdflatex}.}
  \item<4-> \alert<4>{It has nice overlays.}
  \end{enumerate}
}
\end{verbatim}

\Command{hypertarget}
\Parameters{
\item a target name
\item some text
}
\Description{
  If an overlay specification is present, the text is the specified
  target for hyperjumps only on the specified slide. On all other
  slides, the text is shown normally. Note that you \emph{must} add an
  overlay specification to the \texttt{hypertarget} command whenever
  you use it on frames that have multiple slides (otherwise
  \texttt{pdflatex} rightfully complains that you have defined the
  same target on different slides).}
\Example
\begin{verbatim}
\frame{
\begin{itemize}
\item<1-> First item.
\item<2-> Second item.
\item<3-> Third item.
\end{itemize}

\hyperlink{jumptoend}{Jump to last slide of the frame.}
\hypertarget<3>{jumptoend}{}
}
\end{verbatim}


\subsection{Environments with Overlay Specifications}

Environments can also be equipped with overlay specifications. For
most of the predefined environments, see subsection~\ref{predefined},
adding an overlay specifications causes the whole environment to be
uncovered only on the specified slides. This is useful for showing
things incrementally as in the following example.

\begin{verbatim}
\frame
{
  \frametitle{A Theorem on Infinite Sets}

  \begin{theorem}<1->
    There exists an infinite set.
  \end{theorem}

  \begin{proof}<3->
    This follows from the axiom of infinity.
  \end{proof}

  \begin{example}<2->
    The set of natural numbers is infinite.
  \end{example}
}
\end{verbatim}
In the example, the first slide only contains the theorem, on the
second slide an example is added, and on the third slide the proof is
also shown.

The two special environments \verb!onlyenv! and \verb!uncoverenv! are
``environment versions'' of the commands \verb!\only! and \verb!\uncover!.


\Environment{onlyenv}
\Description{
  If an overlay specification is given, the contents of the
  environment is inserted into the text only on the specified slides. }
\Example
\begin{verbatim}
\frame
{
  This line is always shown.
  \begin{onlyenv}<2>
    This line is inserted on slide 2.
  \end{onlyenv}
}
\end{verbatim}

\Environment{uncoverenv}
\Description{
  If an overlay specification is given, the contents of the
  environment is shown only on the specified slides. It still occupies
  space on the other slides.}
\Example
\begin{verbatim}
\frame
{
  This word is 
  \begin{uncoverenv}<2>
    visible
  \end{uncoverenv}
  only on slide 2.
}
\end{verbatim}


\subsection{Restricting the Slides of a Frame}
\label{subsection-restriction}

As mentioned above, the number of slides in a frame is automatically
calculated. If the largest number mentioned in any
specification is 4, four slides are introduced (despite the fact
that a specification like \verb!<4->! might suggest that more than
four slides would be possible).

You can also specify the number of slides in the frame ``by hand.'' To
do so, you pass an optional argument to the \verb!\frame! command,
given in \emph{square} brackets. This argument is also a 
slide specification. The frame will contain only the slides
specified in this argument. Consider the following example.

\begin{verbatim}
\frame[1-2,4-]
{
  This is slide number \only<1>{1}\only<2>{2}\only<3>{3}%
  \only<4>{4}\only<5>{5}.
}
\end{verbatim}
This command will create a frame containing four slides. The first
will contain the text ``This is slide number~1,'' the second ``This is
slide number~2,'' the third ``This is slide number~4,'' and the fourth
``This is slide number~5.''


\subsection{Dynamically Changing Text}

You may sometimes wish to have some part of a frame change dynamically
from slide to slide. On each slide of the frame, something different
should be shown inside this area. You could achieve the effect of
dynamically changing text by giving a list of \verb!\only! commands like this:
\begin{verbatim}
  \only<1>{Initial text.}
  \only<2>{Replaced by this on second slide.}
  \only<3>{Replaced again by this on third slide.}
\end{verbatim}
The trouble with this approach is that it may lead to slight, but
annoying differences in the heights of the lines, which may cause the
whole frame to ``whobble'' from slide to slide. This problem becomes
much more severe if the replacement text is several lines long.

So solve this problem, you can use two environments:
\verb!overlayarea! and \verb!overprint!. The first is more flexible,
but less user-friendly.


\Environment{overlayarea}
\Parameters{
\item
  The width of the area.
\item
  The height of the area.
  }
\Description{
  Everything within the environment will be placed in a rectangular
  area of the specified size. The area will have the same size on all
  slides of a frame, regardless of its actual contents. }
\Example
\begin{verbatim}
\begin{overlayarea}{\textwidth}{3cm}
  \only<1>{Some text for the first slide.\\Possibly several lines long.}
  \only<2>{Replacement on the second slide.}
\end{overlayarea}
\end{verbatim}


\Environment{overprint}
\Parameters{
\item
  Optional parameter in square brackets: width of the overprint
  area. Default: text width.
  }
\Description{
  Inside the environment, use \texttt{onslide} commands to specify
  different things that should be shown for this environment on
  different slides. The \texttt{onslide} commands are used like
  \texttt{item} commands. Everything within the environment will be
  placed in a rectangular area of the specified width. The height and
  depth of the area are chosen large enough to accommodate the largest
  contents of the area. The overlay specifications of the
  \texttt{onslide} commands must be disjoint.}
\Example
\begin{verbatim}
\begin{overprint}
  \onslide<1>
    Some text for the first slide.\\
    Possibly several lines long.
  \onslide<2>
    Replacement on the second slide.
\end{overprint}
\end{verbatim}




\subsection{Making Commands and Environments Overlay-Specification-Aware}

This subsection explains how you can make your own commands
overlay-specification-aware. Also, it explains how to setup counters
correctly that should be increased from frame to frame (like equation
numbering), but not from slide to slide. You may wish to skip this
section, unless you  want to write your own extensions to the \beamer\
class. 
 
You can define a new command that is overlay-specification-aware using
the following command.

\Command{newoverlaycommand}
\Parameters{
\item name of the command
\item commands to be executed on the specified slides
\item commands to be executed otherwise
}
\Description{
  Declares a new command. If this command is encountered, it is
  checked whether an overlay specification follows. If not, the
  commands given in the second parameter are executed. If there is a
  specification, the second parameter is executed if the current slide
  is specified, otherwise the third parameter is executed.
  }
\Example
\begin{verbatim}
\newoverlaycommand{\SelectRedAsColor}{\color[rgb]{1,0,0}}{}
...
\frame
{
  \SelectRedAsColor<2>
  The second slide of this frame is all in red. 
}
\end{verbatim}


\Command{renewoverlaycommand}
\Parameters{
\item name of a command to be redefined
\item commands to be executed on the specified slides
\item commands to be executed otherwise
}
\Description{
  Redeclares a command that already exists in the same way as
  \texttt{newoverlaycommand}. Inside the parameters, you can 
  still access to original definitions using the command
  \texttt{original}, see the example.
  }
\Example
\begin{verbatim}
\renewoverlaycommand{\tiny}{\original{\tiny}}{}
...
\frame
{
  \tiny<2>This text is tiny on slide 2.
}
\end{verbatim}



\Command{newoverlayenvironment}
\Parameters{
\item name of the environment
\item begin commands to be executed on the specified slides
\item end commands to be executed on the specified slides
\item begin commands to be executed otherwise
\item end commands to be executed otherwise
}
\Description{
  Declares a new environment that is overlay specification aware. If
  this environment encountered, it is 
  checked whether an overlay specification follows. If not or if it is
  found and the current slide is specified, the second and third
  parameters form the beginning and end of the environment. Otherwise,
  the fourth and fifth parameters are used.

  This command can take one optional parameter, given in square
  brackets after the first parameter. If this parameter is specified,
  it must currently be~1. In this case, the begin commands must take
  one parameter. This parameter will \emph{preceed} the overlay
  specification, see the examples.
  }
\Example
\begin{verbatim}
\newoverlayenvironment{mytheorem}{\alert{Theorem}:}{}{Theorem:}{}

\frame
{
  \begin{mytheorem}<2>
    This theorem is hilighted on the second slide.
  \end{mytheorem}
}
\end{verbatim}

\begin{verbatim}
\newoverlayenvironment{mytheorem}[1]{\alert{Theorem #1}:}{}{Theorem #1:}{}

\frame
{
  \begin{mytheorem}{of Tantau}<2>
    This theorem is hilighted on the second slide.
  \end{mytheorem}
}
\end{verbatim}


The following two commands can be used to ensure that a certain
counter is automatically reset on subsequent slides of a frame. This
is necessary for example for the equation count. You might want this
count to be increased from frame to frame, but certainly not from
overlay slide to overlay slide. For equation counters and footnote
counters (you should not use footnotes), these commands have already
been invoked.

\Command{resetcounteronoverlays}
\Parameters{
\item name of a \LaTeX\ counter
}
\Description{
  After you have invoked this command, the value of the specified
  counter will be the same on all slides of every frame. 
}
\Example \verb!\resetcounteronoverlays{equation}!
 
\Command{resetcountonoverlays}
\Parameters{
\item name of a \TeX\ count register
}
\Description{
  The same as \texttt{resetcounteronoverlays}, except that this
  command should be used with counts that have been created using the
  \TeX\ primitive \texttt{newcount} instead of \LaTeX 's
  \texttt{definecounter}. 
}
\Example
\begin{verbatim}
\newcount\mycount
\resetcountonoverlays{mycount}
\end{verbatim}




\subsection{Frames and Verbatim Commands}

The \verb!\verb! command and the verbatim environment work only in
frames that contain a single slide. Furthermore, you must explicitly
specify that the frame contains only one slide; like this:
\begin{verbatim}
\frame[all:1]
{
  \frametitle{Our Search Procedure}

  \begin{verbatim}
  int find(int* a, int n, int x)
  {
    for (int i = 0; i<n; i++)
      if (a[i] == x)
        return i;
  }
\end{verbatim}
\unskip\verb!  \end{verbatim}!
\begin{verbatim}
}
\end{verbatim}

Instead of \verb!\frame[all:1]! you could also have specified
\verb!\frame[1]!, but this works only for the presentation version of
the talk, not for the handout version. To make verbatim accessible
also in the handout version, you would have to specify
\verb!\frame[1| handout: 1]! and even more if you also have a
transparencies version. The specification \verb!\frame[all:1]! states
that the frame has just one slide in all versions.

If you need to use verbatim commands in frames that contain several
slides, you must \emph{declare} your verbatim texts before the frame
starts. This is done using two special commands:


\Command{defverb}
\Parameters{
\item command name (including a backslash)
\item a one-line verbatim text, delimited by a special symbol (works
  like the \texttt{verb} command). Adding a star before the second
  parameter make spaces visible.
}
\Description{
  Declares a verbatim text for later use. The declaration should be
  done outside the frame. Once declared, the text can be used
  in overlays like normal text.
  }
\Example
\begin{verbatim}
\defverb\mytext!int main (void) { ...!
\defverb\mytextspaces*!int  main  (void ){  ...!

\frame
{
  \begin{itemize}
  \item<1-> In C you need a main function.
  \item<2-> It is declare like this: \mytext
  \item<3-> Spaces are not important: \mytextspaces
  \end{itemize}
}
\end{verbatim}


\Command{defverbatim}
\Parameters{
\item command name (including a backslash)
\item a normal parameter that contains a \texttt{verbatim} or
  \texttt{verbatim*} environment.
}
\Description{
  Declares a verbatim environment for later use. The declaration
  should be done outside the frame. Once declared, the text can be
  used in overlays like normal text.
  }
\Example
\begin{verbatim}
\defverbatim\algorithm{
\begin{verbatim}
int main (void)
{
  cout << "Hello world." << endl;
  return 0;
}
\end{verbatim}
\unskip\verb!\end{verbatim}}!
\begin{verbatim}
\frame
{
  Our algorithm:

  \alert<1>{\algorithm}

  \uncover<2>{Note the return value.}
}
\end{verbatim}







\section{Structuring a Presentation}

\subsection{Kinds of Global Structures of Presentations}

\subsubsection{Linear Global Structure}

%\subsubsection{Pyramidal Global Structures}

\subsubsection{Nonlinear Global Structure}



\subsection{Commands and Environments for Creating Global Structure}


\subsubsection{Adding a Title Page}

You can use the \verb!\titlepage! command to insert a title page into
a frame. 

The \verb!\titlepage! command will arrange the following elements on
the title page: the document title, the author(s)'s names, their
affiliation, a title graphic, and a date.

\Command{titlepage}
\Description{Inserts the text of a title page into the current frame.}
\Example \verb!\frame{\titlepage}!
\vskip1em

Before you invoke the title page command, you must specify all
elements you wish to be shown. This is done using the following
commands: 

\Command{title}
\Parameters{
\item A shorter version of the title for inclusion in head lines and
  foot lines. This parameter is optional and given in square brackets.
\item A title for the document. Line breaks can be inserted using the
  double-backslash command.
}
\Example
\begin{verbatim}
\title{The Beamer Class}

\title[Short Version]{A Very Long Title\\Over Several Lines}
\end{verbatim}

\Command{author}
\Parameters{
\item A shorter version of the authors for inclusion in head lines and
  foot lines. This parameter is optional and given in square brackets.
\item Names of the authors.
}
\Description{
  The names should be separated using the
  command \texttt{and}. In case authors have different affiliations,
  they should be suffixed by the command \texttt{inst} with different
  parameters.}
\Example\verb!\author[Hemaspaandra et al.]{Lane Hemaspaandra\inst{1} \and Till Tantau\inst{2}}!

\Command{institute}
\Parameters{
\item A shorter version of the institute's name for inclusion in head
  lines and foot lines. This parameter is optional and given in square
  brackets.
\item Institute(s) where the authors work.
}
\Description{
  If more than one institute is given, they should be separated using
  the command \texttt{and} and they should be prefixed by the command
  \texttt{inst} with different parameters.}
\Example
\begin{verbatim}
\institute[Universities of Rochester and Berlin]{
  \inst{1}Department of Computer Science\\
  University of Rochester
  \and
  \inst{2}Fakult\"at f\"ur Elektrotechnik und Informatik\\
  Technical University of Berlin}
\end{verbatim}


\Command{date}
\Parameters{
\item A shorter version of the date for inclusion in head
  lines and foot lines. This parameter is optional and given in square
  brackets.
\item A text to be shown as date or occasion at which the talk was held.
}
\Example\verb!\date{\today}! or \verb!\date[STACS 2003]{STACS Conference, 2003}!.


\Command{titlegraphic}
\Parameters{
\item A text to be shown as title graphic. Typically, a picture
  environment is used as text.
}
\Example\verb!\titlegraphic{\pgfuseimage{titlegraphic}}!



\subsubsection{Adding Table of Contents}

The two commands for creating a table of contents are
\verb!\tableofcontents! and \verb!\tableofcontentscurrent!. The
difference between these commands is small: the first inserts the main
table of contents into the current frame, the second inserts a table
of contents in which only the current section is highlighted. An
example usage is given in the following example:

\begin{verbatim}
\section[Outline]{}
\frame{\tableofcontents}

\section{Introduction}
\frame{\tableofcontentscurrent}
\subsection{Why?}
\frame{...}
\frame{...}
\subsection{Where?}
\frame{...}

\section{Results}
\frame{\tableofcontentscurrent}
\subsection{Because}
\frame{...}
\subsection{Here}
\frame{...}
\end{verbatim}





\subsubsection{Adding Sections and Subsections}

You can structure your text using the commands \verb!\section! and
\verb!\subsection!. Unlike standard \LaTeX, these commands will not
create a heading at the position where you use them. Rather, they will
add an entry to the table of contents and also to the navigation
bars.

In order to create a line break in the table of contents (usually not
a good idea), you can use the command \verb!\breakhere!. Note that the
standard command \verb!\\! does not work.

\Command{section}
\Parameters{
\item (optional, in square brackets) text to be shown in horizontal
  navigation bars 
\item text to be shown in the table of contents; if empty, no entry is
  created.
}
\Description{
  Starts a section. No heading is created, the section name is only
  shown in the table of contents and in the navigation bar. If the
  main parameter is empty, but the parameter in square brackets is
  not, a navigation entry is created, but no entry in the table of
  contents. This is useful for sections like a ``table of contents
  section.''} 
\Example\verb!\section[Summary]{Summary of Main Results}! or
\verb!\section[Outline]{}! 


\Command{subsection}
\Parameters{
\item (optional, in square brackets) text to be shown in horizontal
  navigation bars 
\item text to be shown in the table of contents; if empty, no entry is
  created.
}
\Description{
  Starts a subsection. No heading is created, the subsection name is only
  shown in the table of contents and in the navigation bar. If the
  main parameter is empty, but the parameter in square brackets is
  not, a navigation entry is created, but no entry in the table of
  contents.}
\Example\verb!\subsection{Some Subsection}!




\subsubsection{Adding a Bibliography}

You can use the bibliography environment and the \verb!\cite! commands
of \LaTeX\ in a \beamer\ presentation. However, there are a few things
to keep in mind:

\begin{itemize}
\item
  It is a bad idea to present a long bibliography in a 
  beamer presentation. Present only very few references.
\item
  Present references only if they are intended as ``further reading,''
  for example at the end of a lecture.
\item
  Using the \verb!\cite! commands can be confusing since the audience
  has little chance of remembering the citations. If you cite the
  references, always cite them with full author name and year like
  ``[Tantau, 2003]'' instead of something like ``[2,4]'' or
  ``[Tan01,NT02]''.
\end{itemize}

Keeping the above warnings in mind, proceed as follows to create the
bibliography: 

For a beamer presentation, you will typically have to typeset your
bibliography items partly ``by hand.'' Nevertheless, you \emph{can}
use \verb!bibtex! to create a ``first approximation'' of the
bibliography. Copy the content of the file \verb!main.bbl! into your
presentation. If you are not familiar with \verb!bibtex!, you may wish
to consult its documentation. It is a  powerful tool for
creating high-quality citations.

Using \verb!bibtex! or just your editor, you place your bibliographic
references into an environment called \verb!thebibliography!. This
(standard \LaTeX) environment takes one parameter, which should be the
longest \verb!bibitem! label in the following list of bibliographic
entries.

\Environment{thebibliography}
\Parameters{
\item Text of the longest label. Inside the environment, use one
  \texttt{bibitem} command for each reference.
}
\Description{
  Inserts a bibliography into the current frame. Must be placed inside
a frame. If the bibliography does not fit on one frame, you should
split it (create a new frame and a second \texttt{thebibliography}
environment). Even better, you should reconsider whether it is a good
idea to present so many references.}
\Example

\begin{verbatim}
\frame{
  \frametitle{For Further Reading}

  \begin{thebibliography}{Dijkstra, 1982}
  \bibitem[Solomaa, 1973]{Solomaa1973}
    A.~Salomaa.
    \newblock {\em Formal Languages}.
    \newblock Academic Press, 1973.

  \bibitem[Dijkstra, 1982]{Dijkstra1982}
    E.~Dijkstra.
    \newblock Smoothsort, an alternative for sorting in situ.
    \newblock {\em Science of Computer Programming}, 1(3):223--233, 1982.
  \end{thebibliography}
 }
\end{verbatim}

The parameter of the \verb!thebibliography! environment is used to
determine the indent of the list. However, several templates for the
typesetting of the bibliography (see
Section~\ref{section-bib-templates}) ignore this parameter since they
replace the references by a symbol.

Inside the \verb!thebibliography! environment, use a (standard \LaTeX)
\verb!\bibitem! command for each reference item. Inside each item, use a
(standard \LaTeX) \verb!\newblock! command to separate the authors's
names, the title, the book/journal reference, and any notes. Each of
these commands may introduce a new line or color or other formatting,
as specified by the template for bibliographies.


\Command{bibitem}
\Parameters{
\item
  The text to be inserted into the text when the item is cited in the
  presentation (optional in square brackets). For a beamer
  presentation, this should usually be as long as possible.
\item
  A label to be used with the \texttt{cite} commands.
  }
\Description{
  Adds a reference item to the bibliography. Use \texttt{newblock}
  commands to  separate the authors's names, the title, the
  book/journal reference, and any notes. 
}
\Example

\begin{verbatim}
\bibitem[Dijkstra, 1982]{Dijkstra1982}
  E.~Dijkstra.
  \newblock Smoothsort, an alternative for sorting in situ.
  \newblock {\em Science of Computer Programming}, 1(3):223--233, 1982.
\end{verbatim}


Note that, unlike normal \LaTeX, the default template for the
bibliography does not repeat the citation text (like ``[Dijkstra,
1982]'') before each item in the bibliography. Instead, a cute, small
article symbol is drawn. The rationale is that the audience will not be
able to remember any abbreviated citation texts till the end of the
talk. If you really insist on using abbreviations, you can use the
command \verb!beamertemplatetextbibitems! to restore the default
bevahior, see also Section~\ref{section-bib-templates}.



\subsubsection{Adding an Appendix}

You can add an appendix to your talk by using the \verb!\appendix!
command. You should put frames and perhaps whole subsections into the
appendix that you do not intend to show during your presentation, but
which might be useful to answer a question. 

The appendix acts like an additional section with subsections
all of its own, but it is not shown in the normal table of contents or
in the navigation bars. Thus, it is kept perfectly separate of your
actual talk. However, once you ``enter'' the slides that make up the
appendix (either by continuing past the last slide of the actual talk
or by using a hyper-jump), the navigation bars show (only) the
contents of the appendix and the table of contents commands (only)
show the subsections of the appendix.

Inside the appendix, you should not use the \verb!\section! command,
but you can use the \verb!\subsection! command to structure the
appendix. Use the \verb!\tableofcontents! command to insert a table of
contents of the appendix into the current frame.

\Command{appendix}
\Description{
  Starts the appendix. All frames and all \texttt{subsection} commands
  used after this command will not be shown as part of the normal
  navigation bars.
}
\Example

\begin{verbatim}
\begin{document}
\frame{\titlepage}
\section[Outline]{}
\frame{\tableofcontents}
\section{Main Text}
\frame{Some text}
\section[Summary]{}
\frame{Summary text}

\appendix
\frame{\tableofcontents}
\subsection{Additional material}
\frame{Details}
\frame{Text omitted in main talk.}
\subsection{Even more additional material}
\frame{More details}
\end{document}
\end{verbatim}








\subsection{The Navigation Bars}

Most themes that come along with the \beamer\ class show some kind of
navigation bar during your talk. Although these navigation bars take
up quite a bit of space, they are often useful for two reasons:

\begin{itemize}
\item
  They provide the audience with a visual feedback of how much of your
  talk you have covered and what is yet to come. Without such
  feedback, an audience will often puzzle whether something you are
  currently introducing will be explained in more detail later on or
  not.
\item
  You can click on all parts of the navigation bar. This will directly
  ``jump'' you to the part you have clicked on. This is particularly
  useful to skip certain parts of your talk and during a ``question
  session,'' when you wish to jump back to a particular frame someone
  has asked about.
\end{itemize}


\subsubsection{Using the Navigation Bars to Navigate Between Frames}

When you click on one of the icons representing a frame (by default
this is icon is a small circle), the following happens:
\begin{itemize}
\item
  If you click on (the icon of) any frame other than the current frame, the
  presentation will jump to the first slide of the frame you clicked
  on.
\item
  If you click on the current frame and you are not on the last slide
  of this frame, you will jump to the last slide of the frame.
\item
  If you click on the current frame and you are on the last slide, you
  will jump to the first slide of the frame.
\end{itemize}
By the above rules you can:
\begin{itemize}
\item
  Jump to the beginning of a frame from somewhere else by clicking on
  it once.  
\item
  Jump to the end of a frame from somewhere else by clicking on it
  twice.
\item
  Skip the rest of the current frame by clicking on it once.
\end{itemize}

I also tried making a jump to an already-visited frame jump
automatically to the last slide of this frame. However, this turned
out to be more confusing than helpful. With the current implementation
a double-click always brings you to the end of a slide, regardless
from where you ``come.''


\subsubsection{Using the Navigation Bars to Navigate Between Sections}

By clicking on a section or subsection in the navigation bar, you will
jump to that section. Clicking on a section is particularly useful if
the section starts with a \verb!\tableofcontentscurrent!, since you
can use it to jump to the different subsections.

By clicking on the document title in a navigation bar (not all themes
show it), you will jump to the first slide of your presentation
(usually the title page) \emph{except} if you are already at the first
slide. On the first slide, clicking on the document title will jump to
the appendix, if there is one. Thus by \emph{double} clicking the
document title in a navigation bar, you can jump to the appendix.





\subsection{The Local Structure of Frames}

Just like your whole presentation, each frame should also be
structured. A frame that is solely filled with some long text is very
hard to follow. It is your job to structure the contents of each frame
such that, ideally, the audience immediately seems which information
is important, which information is just a detail, how the presented
information is related, and so on.

\LaTeX\ provides different commands for structuring text ``locally,''
for example, via the \texttt{itemize} environment. These environments
are also available in the beamer class, although their appearance has
been slightly changed. Furthermore, the \beamer\ class also defines
some new commands and environments, see below, that may help you to
structure your text.


\subsubsection{Itemizations, Enumerations, and Descriptions}

There are three predefined environments for creating lists, namely
\verb!enumerate!, \verb!itemize!, and \verb!description!. The first
two of there can be nested to depth two, but not further (this would
create totally unreadable slides).

The \verb!\item! command is overlay-specification-aware. If an overlay
specification is provided, the item will only be shown on the
specified slides, see the following example. If the \verb!\item!
command is to take an optional argument and an overlay specification,
the overlay specification comes first as in \verb!\item<1>[Cat]!.

\begin{verbatim}
\frame
{
  There are three important points:
  \begin{enumerate}
  \item<1-> A first one,
  \item<2-> a second one with a bunch of subpoints,
    \begin{itemize}
    \item first subpoint. (Only shown from second slide on!).
    \item<3-> second subpoint added on third slide.
    \item<4-> third subpoint added on fourth slide.
    \end{itemize}
  \item<5-> and a third one.
  \end{enumerate}
}
\end{verbatim}


\Environment{itemize}
\Description{
  Used to display a list of items that do not have a special
  ordering. Inside the environment, use an \texttt{item} command for
  each topic. The appearence of the items can be changed using
  templates, see Section~\ref{section-templates}.}
\Example
\begin{verbatim}
\begin{itemize}
\item This is important.
\item This is also important.
\end{itemize}
\end{verbatim}


\Environment{enumerate}
\Description{
  Used to display an ordered list of items. Inside the environment,
  use an \texttt{item} command for each topic. The appearence of the
  items can be changed using templates, see
  Section~\ref{section-templates}.}
\Example
\begin{verbatim}
\begin{enumerate}
\item This is important.
\item This is also important.
\end{enumerate}
\end{verbatim}


\Environment{description}
\Parameters{
\item
  Some text, given as an optional parameter in square brackets. The
  width of the labels will be set to the width of this text. Normally,
  you choose the widest label in the description and copy it here.
  }
\Description{
  Used to display an list that explains or defines labels. Inside the
  environment, use an \texttt{item} with an argument in square brackets
  for each topic. The appearence of the items can be changed using
  templates, see Section~\ref{section-templates}.}
\Example
\begin{verbatim}
\begin{description}
\item[Lion] King of the savanna.
\item[Tiger] King of the jungle.
\end{description}

\begin{description}[longest label]
\item<1->[short] Some text.
\item<2->[longest label] Some text.
\item<3->[long label] Some text.
\end{description}
\end{verbatim}




\subsubsection{Block Environments and Simple Structure Commands}
\label{predefined}

The \beamer\ class predefines a number of useful environments and
commands. Using these commands makes is easy to change the appearance
of a document by changing the theme.


\Command{alert}
\Parameters{
\item a text to be hilighted.
  }
\Description{
  The given text is hilighted, typically be coloring the text red. If
  an overlay specification is given, the command only has an effect on
  the specified slides.
  }
\Example\verb!This is \alert{important}.!


\Command{structure}
\Parameters{
\item a text to be marked as part of the structure of the text.
  }
\Description{
  The given text is marked as part of the structure, typically be
  coloring the text in the structure color. If
  an overlay specification is given, the command only has an effect on
  the specified slides.
  }
\Example\verb!\structure{Paragraph Heading.}!

\Environment{block}
\Parameters{
\item a block title
  }
\Description{
  Inserts a block, like a definition or a theorem, with a title. If
  an overlay specification is given, the block is shown only on the
  specified slides. In the example, the definition is shown only from
  slide 3 onwards.
  }
\Example
\begin{verbatim}
  \begin{block}{Definition}<3->
    A \alert{set} consists of elements.
  \end{block}
\end{verbatim}

\Environment{alertblock}
\Parameters{
\item a block title
  }
\Description{
  Inserts a block whose title is hilighted. If
  an overlay specification is given, the block is shown only on the
  specified slides.
  }
\Example
\begin{verbatim}
  \begin{alertblock}{Wrong Theorem}
    $1=2$.
  \end{alertblock}
\end{verbatim}

\Environment{exampleblock}
\Parameters{
\item a block title
  }
\Description{
  Inserts a block that is supposed to be an example. If
  an overlay specification is given, the block is shown only on the
  specified slides.
  }
\Example
\begin{verbatim}
  \begin{exampleblock}{Example}
    The set $\{1,2,3,5\}$ has four elements.
  \end{exampleblock}
\end{verbatim}

Predefined English block environments, that is, block environments
with fixed title, are: \verb!Theorem!, \verb!Proof!, \verb!Corollary!,
\verb!Fact!, \verb!Example!, and \verb!Examples!. You can also use these
environments with a lowercase first letter, the result  is the
same. The following German block environments are also predefined:
\verb!Problem!, \verb!Loesung!, \verb!Definition!, \verb!Satz!,
\verb!Beweis!, \verb!Folgerung!, \verb!Lemma!, \verb!Fakt!,
\verb!Beispiel!, and \verb!Beispiele!. See the following example for
their usage

\begin{verbatim}
\frame
{
  \frametitle{A Theorem on Infinite Sets}

  \begin{theorem}<1->
    There exists an infinite set.
  \end{theorem}

  \begin{proof}<2->
    This follows from the axiom of infinity.
  \end{proof}

  \begin{example}<3->
    The set of natural numbers is infinite.
  \end{example}
}
\end{verbatim}



\subsubsection{Splitting a Frame into Multiple Columns}

Three environments are used to create columns on a slide. Columns are
especially useful for placing a graphic next to a description/explanation.
The main environment for creating columns is called
\verb!columns!. Inside this environment, you can place several
\verb!column! environments. Each will create a new column.

\Environment{columns}
\Description{
  A multi-column area. Inside the environment you should place only
  \texttt{column} environments.}
\Example
\begin{verbatim}
\begin{columns}
  \begin{column}{5cm}
    First column.
  \end{column}
  \begin{column}{5cm}
    Second column.
  \end{column}
\end{columns}
\end{verbatim}

\Environment{columnsonlytextwidth}
\Description{
  This command has the same effect as \texttt{columns}, except that the
  columns will not occupy the whole page width, but only the text
  width. 
  }

\Environment{column}
\Parameters{
\item The width of the column.
}
\Description{
  Creates a single column of the specified width. The column is
  centered vertically relative to the other columns.}






\section{Graphics, Animations, and Special Effects}

\subsection{Graphics}
\label{section-graphics}

Graphics often convey concepts or ideas much more efficiently than
text: A picture can say more than a thousand words. (Although,
sometimes a word can say more than a thousand pictures.) In the
following, the advantages and disadvantages of different possible ways
of creating graphics for beamer presentations are discussed.



\subsubsection{Including External Graphic Files}

One way of creating graphics for a presentation is to  use an 
external program, like \texttt{xfig} or the Gimp. These programs
have an option to \emph{export} graphic files in a format that can
then be inserted into the presentation.

The main advantage is:
\begin{itemize}
\item
  You can use a powerful program to create a high-quality graphic.
\end{itemize}

The main disadvantages are:
\begin{itemize}
\item
  You  have to worry about many files. Typically there are at least
  two for each presentation, namely the program's graphic data file and the
  exported graphic file in a format that can be read by \TeX.
\item
  Changing the graphic using the program does not automatically change
  the graphic in the presentation. Rather, you must reexport the
  graphic and rerun \LaTeX.
\item
  It may be difficult to get the line width, fonts, and font sizes
  right.
\item
  Creating formulas as part of graphics is often difficult or
  impossible.
\end{itemize}


In principle, you can use all the standard \LaTeX\ commands for
inserting graphics, like the command \verb!\includegraphic!. However,
it may be advisable to use the special commands from the \textsc{pgf}
package instead for this particular purpose. The reason is that
\verb!\includegraphic! will put a copy of the graphic into the file
upon each invocation. If a frame includes a graphic and
shows this graphic on ten slides, then ten copies of the possibly
large graphic file will be inserted into the presentation file. This
can result in huge files.

The \textsc{pgf} package offers a solution to this (but, currently,
only if you use \verb!pdflatex!): There, you must first \emph{declare}
every graphic. Once you have done this, you can \emph{use} the graphic
as often as you want and the graphic data will be put only once into
the \verb!.pdf! file. Furthermore, if you use \verb!latex! instead of
\verb!pdflatex!, the \textsc{pgf} package will automatically search
for a graphic file with the extension \texttt{.eps} instead of the
extensions appropriate for \verb!pdflatex!.

The \textsc{pgf} commands are used as follows: To declare an image,
you write, somewhere early in your file,
\begin{verbatim}
\pgfdeclareimage{icon}{9pt}{10pt}{iconfile}
\end{verbatim}
The first parameter is a string by which you can refer to the image
later on. The second two parameters are the width and height of the
image, although one (but not both) can be omitted in which case the
missing value is computed automatically such that the image's aspect
ratio remains correct. The last parameter is the graphic file name
\emph{without} the extension. Depending on whether a \textsc{pdf} or a
PostScript file is created, the package will try appropriate
extensions automatically (\texttt{.eps} for normal \LaTeX,
\texttt{.png}, \texttt{.jpg}, and \texttt{.pdf} for
\texttt{pdflatex}). 

To use a previously declared image, just write 
\begin{verbatim}
\pgfuseimage{icon}
\end{verbatim}

For more details, consult the \textsc{pgf} User Manual.


\subsubsection{Inlining Graphic Commands}

A different way of creating graphics is to insert
graphic drawing commands directly into your \LaTeX\ file. There are numerous
packages that help you do this. They have various degrees of
sophistication. Inlining graphics suffers from none of the
disadvantages mentioned above for including external graphic files,
but the main disadvantage is that it is often hard to use
these packages. In some sense, you ``program'' your graphics, which 
requires a bit of practice.

When choosing a graphic package, there are a few things to keep in
mind:
\begin{itemize}
\item
  Many packages produce poor quality graphics. This is especially true
  of the standard \texttt{picture} environment of \LaTeX.
\item
  Powerful packages that produce high-quality graphics often do not
  work together with \texttt{pdflatex}.
\item
  The most powerful and easiest-to-use package around, namely
  \texttt{pstricks}, does not work together with \texttt{pdflatex} and
  this is a fundamental problem. Due to the fundamental differences
  between \textsc{pdf} and PostScript, it is not possible to write a
  ``\texttt{pdflatex} backend for \texttt{pstricks}.''
\end{itemize}

A solution to the above problem (though not necessarily the best) is
to use the \textsc{pgf} package. It produces high-quality graphics and
works together with \texttt{pdflatex}, but also with normal
\texttt{latex}. It is not as powerful as \texttt{pstricks} (as pointed
out above, this is because of rather fundamental reasons) and not as
easy to use, but it should be sufficient in most cases.


\subsection{Animations}

There are two ways of creating animations. One way is to use the
overlay commands of the \beamer\ package to create a series of slides
that, when shown in rapid succession, present an animation. This is a
flexible approach, but such animations will typically be rather static
since it will take at least one second to advance from one slide to
the next. This approach is mostly useful for animations where you want
to explain each ``picture'' of the animation.

A second way is to include an animation generated using some external
program (like a renderer) and to then use the capabilities of the
presentation program (like the Acrobat Reader) to show the
animation. Unfortunately, currently there is no portable way of doing
this and even the Acrobat Reader does not support this feature on all
platforms.



\subsection{Slide Transitions}

\textsc{pdf} in general, and the Acrobat Reader in particular, offer a
standardized way of defining \emph{slide transitions}. Such a
transition is a visual effect that is used to show the slide. For
example, instead of just showing the slide immediately, whatever was
shown before might slowly ``dissolve'' and be replaced by the slide's
content.

Slide transitions should be used with great care. Most of the time,
they only distract. However, they can be useful in a limited number of
situations: For example, you might show a young boy on a slide
and might wish to dissolve this slide into slide showing a grown man
instead. In this case, the dissolving gives the audience visual
feedback that the young boy ``slowly becomes'' the man.

There are a number of commands that can be used to specify what effect
should be used when the current slide is presented. Consider the
following example:

\begin{verbatim}
\frame{
  \pgfuseimage{youngboy}
}
\frame{
  \transdissolve
  \pgfuseimage{man}
}
\end{verbatim}
The command \verb!\transdissolve! causes the slide of the
second frame to be shown in a ``dissolved way.'' Note that the
dissolving is a property of the second frame, not of the first one. We
could have placed the command anywhere on the frame.

The transition commands are overlay-specification-aware. We could
collapse the two frames into one frame like this:
\begin{verbatim}
\frame{
  \only<1>{\pgfuseimage{youngboy}}
  \only<2>{\pgfuseimage{man}}
  \transdissolve<2>
}
\end{verbatim}
This states that on the first slide the young boy should be shown, on
the second slide the old man should be shown, and when the second
slide is shown, it should be  shown in a ``dissolved way.''

In the following, the different commands for creating transitional
effects are listed.

\Command{transblindshorizontal}
\Description{
  Show the slide as if horizontal blinds where pulled away.
}
\Example\verb!\transblindshorizontal!
  
\Command{transblindsvertical}
\Description{
  Show the slide as if vertical blinds where pulled away.
}
\Example\verb!\transblindsvertical<2,3>!
  
\Command{transboxin}
\Description{
  Show the slide by moving to the center from all four sides.
}
\Example\verb!\transboxin<1>!
  
\Command{transboxout}
\Description{
  Show the slide by showing more and more of a rectangular area that
  is centered on the slide center.
}
\Example\verb!\transboxout!
  
\Command{transdissolve}
\Description{
  Show the slide by slowly dissolving what was shown before.
}
\Example\verb!\transdissolve!
  
\Command{transglitter}
\Parameters{
\item
  a degree (must be a multiple of 90).  
}
\Description{
  Show the slide with a glitter effect that sweeps in the specified
  direction. 
}
\Example\verb!\transglitter<2-3>{90}!
  
\Command{transsplitverticalin}
\Description{
  Show the slide by sweeping two vertical lines from the sides inward.
}
\Example\verb!\transsplitverticalin!
  
\Command{transsplitverticalout}
\Description{
  Show the slide by sweeping two vertical lines from the center outward.
}
\Example\verb!\transsplitverticalout!
  
\Command{transsplithorizontalin}
\Description{
  Show the slide by sweeping two horizontal lines from the sides inward.
}
\Example\verb!\transsplithorizontalin!
  
\Command{transsplithorizontalout}
\Description{
  Show the slide by sweeping two horizontal lines from the center outward.
}
\Example\verb!\transsplithorizontalout!
  
\Command{transwipe}
\Parameters{
\item
  a degree (must be a multiple of 90).  
}
\Description{
  Show the slide by sweeping a single line in the specified direction,
  thereby ``wiping out'' the previous contents.
}
\Example\verb!\transwipe{90}!
  



\section{Creating Handouts, Transparencies, and Notes}

The \beamer\ package offers different ways of creating special
versions of your talk that can be used in different contexts. You can
easily create a \emph{handout} version of the presentation that can be
distributed to the audience. You can also create a version that is
more suitable for a presentation using an overhead projector. Finally,
you can add notes for yourself that help you remember what to say
for specific slides. All of these versions coexist in your main
file. They are created by specifying different class
options and rerunning \TeX\ on the main file.


\subsection{Creating Handouts}

\label{handout}

A \emph{handout} is a version of a presentation that is printed on
paper and handed out to the audience before or after the talk. (See
Section~\ref{section-postscript} for how to place numerous frames on one
pages, which is very useful for handouts.)  For the handout you
typically want to produce as few slides as possible per frame. In
particular, you do not want to print a new slide for each slide of a
frame. Rather, only the ``last'' slide should be printed. 

In order to create a handout, specify the class option
\verb!handout!. If you do not specify anything else, this will cause
all overlay specifications to be suppressed. For most cases this will
create exactly the desired result.

In some cases, you may want a more complex behaviour. For example, if
you use many \verb!\only! commands to draw an animation. In this case,
suppressing all overlay specifications is not such a good idea, since
this will cause all steps of the animation to be shown at the same
time. In some cases this is not desirable. Also, it might be desirable
to suppress some \verb!\alert! commands that apply only to specific
slides in the handout.

For a fine-grained control of what is shown on a handout, you can use
\emph{alternate overlay specifications}. They specify which slides
 of a frame should be shown for a special version, for example for the
handout version. An alternate overlay specification is written
alongside the normal overlay specification inside the pointed
brackets. It is separated from the normal specification by a vertical
bar and a space. The version to which the alternate specification
applies is written first, followed by a colon. Here is an example:
\begin{verbatim}
  \only<1-3,5-9| handout:2-3,5>{Text}
\end{verbatim}
This specification says: ``Normally, insert the text on slides 1--3
and 5--9. For the handout version, insert the text only on slides
2,~3, and~5.'' If no alternate overlay specification is given for
handouts, the default is ``always.'' This causes the desirable effect
that if you do not specify anything, the overlay specification is
effectively suppressed for the handout.

An especially useful specification is the following:
\begin{verbatim}
  \only<3| handout:0>{Not shown on handout.}
\end{verbatim}
Since there is no zeroth slide, the text is not shown. Likewise,
\verb!\alert<3| handout:0>{Text}! will not alert the text on a
handout.

You can also use an alternate overlay specification for the optional
argument of the frame command as in the following example.
\begin{verbatim}
\frame[1-| handout:0]{Text...}
\end{verbatim}
This causes the frame to be suppressed in the handout version. Also,
you can restrict the presentation such that only specific slides of
the frame are shown on the handout:
\begin{verbatim}
\frame[1-| handout:4-5]{Text...}
\end{verbatim}

It is also possible to give only an alternate overlay
specification. For example, \verb!\alert<handout:0>{...}! causes the
text to be always hilighted during the presentation, but never on the
handout version. Likewise, \verb!\frame[handout:0]{...}! causes the
frame to be suppressed for the handout.

Finally, note that it is possible to give more than one alternate
overlay specification and in any order. For example, the following
specification states that the text should be inserted on the first
three slides in the presentation, in the first two slides of the
transparency version, and not at all in the handout.
\begin{verbatim}
  \only<trans:1-2| 1-3| handout:0>{Text}
\end{verbatim}

If you wish to give the same specification in all versions, you can do
so by specifying \verb!all:! as the version. For example,
\begin{verbatim}
\frame[all:1-2]
{
  blah...
}
\end{verbatim}
ensures that the frame has two slides in all versions. 


\subsection{Creating Transparencies}

\label{trans}

The main aim of the \beamer\ class is to create presentations for
beamers. However, it is often useful to print transparencies as
backup, in case the hardware fails. A transparencies version of a talk
often has less slides than the main version, since it takes more time
to switch slides, but it may have more slides than the handout
version. For example, while in a handout an animation might be
condensed to a single slide, you might wish to print several slides
for the transparency version.

You can use the same mechanism as for creating handouts: Specify
\verb!trans! as a class option and add alternate transparency
specifications for the \verb!trans! version as needed. An elaborated
example of different overlay specifications for the presentation, the
handout, and the transparencies can be found in the file
\verb!beamerexample.tex!.



\subsection{Adding Notes}

You can add notes to your slides using the command \verb!\note!. A
note is a reminder to yourself of what you should say or should keep in
mind when presenting a frame. The \verb!\note! command should be given
after the frame to which the note applies. Here is a typical example.
\begin{verbatim}
\frame{
  \begin{itemize}
  \item<1-> Eggs
  \item<2-> Plants
  \item<3-> Animals
  \end{itemize}
}
\note{Tell joke about eggs.}
\end{verbatim}
The note command will create a new page that contains your text plus
some information that should make it easier to match the note to the
frame while talking. 

Since you normally do not wish the notes to be part of your
presentation, you must explicitly specify the class option
\verb!notes! to include notes. If this option is not specified, notes
are suppressed. If you specify \verb!notesonly! instead of
\verb!notes!, only notes will be included and all normal frames are
parsed, but not displayed. This is useful for printing the notes.

\Command{note}
\Parameters{
\item a note text.
  }
\Description{
  Creates a note page. Should be given right after a frame.
  }
\Example\verb!\note{Talk no more than 1 minute.}!


\Command{noteitems}
\Parameters{
\item a list of \texttt{item} commands.
  }
\Description{
  Just like the \texttt{note} command, except that an \texttt{itemize}
  environment is setup inside the note.
  }
\Example

\begin{verbatim}
\frame{Bla bla...}
\noteitems{
\item Stress the importance.
\item Use no more than 2 minutes.
}
\end{verbatim}




\section{Customization}


\subsection{Fonts}

By default, the beamer class uses the Computer Modern sans-serif fonts
for typesetting a presentation. The Computer Modern font family is the
original font family designed by Donald Knuth himself for the \TeX\
program. A sans-serif font is a font in which the letters do not have
serifs (from Frensh \emph{sans}, which means ``without''). Serifs are
the little hooks at the ending of the strokes that make up a
letter. The font you are currently reading is a serif font. \textsf{By
  comparison, this text is in a sans-serif font.}

The choice Computer Modern sans-serif had the following reasons:

\begin{itemize}
\item
  The Computer Modern family has a very large number of symbols
  available that go well together.
\item
  Sans-serif fonts are (generally considered to be) easier to read
  when used in a presentation. In low resolution rendering, serifs
  decrease the legibility of a font.
\end{itemize}

While these reasons are pretty good, you still might wish to change the font:

\begin{itemize}
\item
  The Computer Modern fonts are a bit boring if you have seen them too
  often. Using another font (but not Times!) can give a fresh look.
\item
  Other fonts, especially Times, are sometime rendered better since
  they seem to have better internal hinting.
\item
  A presentation typeset in a serif font  creates a conservative
  impression, which might be exactly what you wish to create.
\end{itemize}

There are two ways of changing the document font: First, you must
decide whether the text should be typeset in sans serif or in
serif. To choose this, use either the class option \texttt{sans} or
\texttt{serif}. By default, \texttt{sans} is selected, so you do not
need to specify this. Furthermore, you can specify one of the two
options \texttt{mathsans} or \texttt{mathserif}. These options
override the overall sans-serif/serif choice for math text.

Second, you can independently switch the document font. To do so, you
should use one of the prepared packages of \LaTeX's font
mechanism. For example, to change to Times/Helvetica, simply add
\begin{verbatim}
\usepackage{times}
\end{verbatim}
in your preamble. Note that if you do not specify \texttt{serif} as a
class option, Helvetica (not Times) will be selected as the text
font.

There may be many other fonts available on your
installation. Typically, at least some of the following packages
should be available: \texttt{avant}, \texttt{bookman},
\texttt{chancery}, \texttt{charter},  \texttt{euler}, \texttt{helvet},
\texttt{mathtime}, \texttt{mathptm}, \texttt{newcent},
\texttt{palatino}, \texttt{pifont}, \texttt{times},
\texttt{utopia}.

If you use \texttt{times} together with the \texttt{serif} option, you
may wish to include also the package \texttt{mathptm}. If you use the
\texttt{mathtime} package (you have to buy some of the fonts), you
also need to specify the \texttt{serif} option.



\subsection{Margins and Sizes}

The ``paper size'' of a beamer presentation is fixed to 128mm times
96mm. The aspect ratio of this size is 4:3, which is exactly what most
beamers offer these days. It is the job of the
presentation program (like \verb!acroread!) to display the slides at
full screen size. The main advantage of using a small ``paper size''
is that you can use all your normal fonts at their natural sizes. In
particular, inserting a graphic with 11pt labels will result in
reasonably sized labels during the presentation.

You should refrain from changing the ``paper size.'' However, you
\emph{can} change the size of the left and right margins, which
default to 1cm. To change them, you should use the following two
commands:

\Command{beamersetleftmargin}
\Parameters{
\item a new left margin, \emph{excluding} the left side bar, if present.
  }
\Description{
  Sets a new left margin. This excludes the left side bar. Thus, it is
the distance between the right edge of the left side bar and the left
edge of the text. This command can only be used in the preamble
(before the \texttt{document} environment is used).
  }
\Example \verb!\beamersetleftmargin{1cm}!

\Command{beamersetrightmargin}
\Parameters{
\item a new right margin, excluding the right side bar, if present.
  }
\Description{
  Like \texttt{beamersetleftmargin}, only for the right margin.
  }
\Example \verb!\beamersetleftmargin{1cm}!

For more information on side bars, see Section~\ref{section-sidebar-templates}.



\subsection{Class Options}

Class options are listed right behind the command \verb!\documentclass!
in square brackets. Class options, see the following list, govern
certain global behaviors of the presentation.

\ClassOption{notes}
\Description{
  Include notes in the output file. Normally, notes are not included.
  }

\ClassOption{notesonly}
\Description{
  Include only the notes in the output file. Useful for printing them.
  }

\ClassOption{handout}
\Description{
  Create a version that uses the \texttt{handout} overlay
  specifications. See subsection~\ref{handout}.
  }

\ClassOption{trans}
\Description{
  Create a version that uses the \texttt{trans} overlay
  specifications. See subsection~\ref{trans}.
  }

\ClassOption{hidesubsections}
\Description{
  Suppresses the subsections in the main table of contents. This is
  useful if you do not wish to show too many details when presenting
  the talk outline. However, the subsections of the current subsection
  will still be shown when using the command
  \texttt{tableofcontentscurrent}. 
  }

\ClassOption{shadesubsections}
\Description{
  Show the subsections in the main table of contents in a shaded
  way. This is useful if you wish to show, but do not wish to talk
  about them when presenting the talk outline.
  }

\ClassOption{inrow}
\Description{
  All small frame representation in the navigation bars for a single
  section are shown alongside each other. Normally, the representation
  for different subsections are shown in different lines.
  }

\ClassOption{slidescentered}
\Description{
  Place text of slides at the (vertical) center of the slides. This is
  the default.
  }

\ClassOption{slidestop}
\Description{
  Place text of slides at the (vertical) top of the slides. This
  corresponds to a vertical ``flush.''
}

\ClassOption{blue, red, grey, brown}
\Description{
  These options change the main color of the navigation and title bars
  to the given colors. Other colors can be setup using the command
  \texttt{themecolor}, which takes three parameters: a red, a green,
  and a blue value as floating point numbers between 0 (black) and 1
  (highest intensity). 
  }

\ClassOption{bigger}
\Description{
  Makes all fonts a little bigger, which makes the text more
  readable. The downside is that less fits onto each frame.
  }

\ClassOption{smaller}
\Description{
  Makes all fonts a little smaller, which allows you to fit more onto
  frames. Normally, this is not a good idea.
  }

\ClassOption{sans}
\Description{
  Use a sans-serif font during the presentation. (Default.)
  }

\ClassOption{serif}
\Description{
  Use a serif font during the presentation.
}

\ClassOption{mathsans}
\Description{
  Override the math font to be a sans-serif font.
  }

\ClassOption{mathserif}
\Description{
  Override the math font to be a serif font.
}





\subsection{Themes}

Just like \LaTeX\ in general, the \beamer\ class tries to separate the
contents of a text from the way it is typeset (displayed). There are two ways in
which you can change how a presentation is typeset: you can specify a
different theme and you can specify different templates. A theme is
a predefined collection of templates.

There exist a number of different predefined themes that can be used
together with the \beamer\ class. Feel free to add further themes.
Themes are used by including an appropriate \LaTeX\ style file, using
the standard \verb!\usepackage! command.


\subsection{Bars Theme}

\Theme{beamerthemebars}
\Parameters{
\item Package option \texttt{headheight}, which specifies the height
of the head line. Specified in a key~=~value fashion.
\item Package option \texttt{footheight}, which specifies the height
of the foot line. Specified in a key~=~value fashion.
}
\Example
\begin{verbatim}
\usepackage[headheight=2cm,footheight=1cm]{beamerthemeboxes}
\end{verbatim}

\Example

\hbox{\pgfuseimage{themebars}\quad\pgfuseimage{themebars2}}


\subsection{Boxes Theme}

\vbox{
\Theme{beamerthemeboxes}

\Example

\hbox{\pgfuseimage{themeboxes}\quad\pgfuseimage{themeboxes2}}
}

For this theme, you can specify an arbitrary number of templates for
the boxes in the head line and in the foot line. You can add a
template for another box by using the following commands.

\Command{addheadboxtemplate}
\Parameters{
\item a color command for the background of the box
\item a template for a new box
  }
\Description{
  Each time this command is invoked, a new box is added to the head
  line, with the first added box being shown on the left. All boxes
  will have the same size.
}
\Example
\begin{verbatim}
\addheadboxtemplate{\color{black}}{\color{white}\tiny\quad Left Box}
\addheadboxtemplate{\color{black}}{\color{white}\tiny\quad Right Box}
\end{verbatim}

\Command{addfootboxtemplate}
\Parameters{
\item a color command for the background of the box
\item a template for a new box
  }
\Example
\begin{verbatim}
\addheadfoottemplate{\color{black}}{\color{white}\tiny\quad Big Box}
\end{verbatim}




\subsubsection{Classic Theme}

\vbox{
\Theme{beamerthemeclassic}

\Example

\hbox{\pgfuseimage{themeclassic}\quad\pgfuseimage{themeclassic2}}
}


\subsubsection{Lined Theme}

\vbox{
\Theme{beamerthemelined}

\Example

\hbox{\pgfuseimage{themelined}\quad\pgfuseimage{themelined2}}
}




\subsubsection{Plain Theme}

\vbox{
\Theme{beamerthemeplain}

\Example

\hbox{\pgfuseimage{themeplain}\quad\pgfuseimage{themeplain2}}
}


\subsubsection{Side Bar Themes}

\Theme{beamerthemesidebar}
\Parameters{
\item Package option \texttt{width}, which specifies the width of 
of the side bar. Specified in a key~=~value fashion.
}
\Example
\begin{verbatim}
\usepackage[width=3cm]{beamerthemesidebar}
\end{verbatim}

\Example

\hbox{\pgfuseimage{themesidebar}\quad\pgfuseimage{themesidebar2}}


The following themes take the same parameter as the normal side bar
theme. They only differ in the coloring of the side bar.

\vbox{
\Theme{beamerthemesidebartab}

\Example

\hbox{\pgfuseimage{themesidebartab}\quad\pgfuseimage{themesidebartab2}}
}

\vbox{
\Theme{beamerthemesidebardark}

\Example

\hbox{\pgfuseimage{themesidebardark}\quad\pgfuseimage{themesidebardark2}}
}

\vbox{
\Theme{beamerthemesidebartabdark}

\Example

\hbox{\pgfuseimage{themesidebardarktab}\quad\pgfuseimage{themesidebardarktab2}}
}


\subsubsection{Split Theme}

\vbox{
\Theme{beamerthemesplit}

\Example

\hbox{\pgfuseimage{themesplit}\quad\pgfuseimage{themesplit2}}
}


\subsubsection{Condensed Split Theme}

\vbox{
\Theme{beamerthemesplitcondensed}

\Example

\hbox{\pgfuseimage{themesplitcondensed}\quad\pgfuseimage{themesplitcondensed2}}
}
\vbox{
\Theme{beamerthemetree}



\subsubsection{Tree Themes}

\Example

\hbox{\pgfuseimage{themetree}\quad\pgfuseimage{themetree2}}
}

\vbox{
\Theme{beamerthemetreebars}

\Example

\hbox{\pgfuseimage{themetreebars}\quad\pgfuseimage{themetreebars2}}
}


\subsection{Templates}
\label{section-templates}

If you only wish to modify a small part of how your presentation is
rendered, you do not need to create a whole new theme. Instead, you
can modify an appropriate template.

A template specifies how a part of a presentation is typeset. For
example, the frame title template dictates where the frame title is
put, which font is used, and so on.

As the name suggests, you specify a template by writing the exact
\LaTeX\ code you would also use when typesetting a single frame title
by hand. Only, instead of the actual title, you use the command
\verb!\insertframetitle!.

For example, suppose we would like to have the frame title typeset in
red, centered, and boldface. If we were to typeset a single frame
title by hand, it might be done like this:
\begin{verbatim}
\frame
{
  \begin{centering}
    \color{red}
    \textbf{The Title of This Frame.}
    \par
  \end{centering}

  Blah, blah.
}
\end{verbatim}

In order to typeset the frame title in this way on all slides, we can
change the frame title template as follows:
\begin{verbatim}
\useframetitletemplate{
  \begin{centering}
    \color{red}
    \textbf{\insertframetitle}
    \par
  \end{centering}
}
\end{verbatim}

We can then use the following code to get the desired effect:
\begin{verbatim}
\frame
{
  \frametitle{The Title of This Frame.}

  Blah, blah.
}
\end{verbatim}

When rendering the frame, the \beamer\ class will use the code of the
frame title template to typeset the frame title and it will replace
every occurrence of \verb!\insertframetitle! by the current frame
title.

In the following subsections all commands for changing templates are
listed, like the above-mentioned command
\verb!\useframetitletemplate!. Inside these commands, you should use
the \verb!\insertxxxx! commands listed in 
the next subsection. 

Some of the below subsections start with commands for using
\emph{predefined} templates. These commands are defined in the package
\verb!beamertemplates!. Calling one of them will change a template in
a predefined way. Using them, you can use, for example, your favorite
theme together with a predefined background.



\subsubsection{Title Page}

\Command{usetitlepagetemplate}
\Parameters{
\item a template for the title page
  }
\Example
\begin{verbatim}
\usetitlepagetemplate{
  \vbox{}
  \vfill
  \begin{centering}
    \Large\structure{\inserttitle}
    \vskip1em\par
    \normalsize\insertauthortitle\vskip1em\par
    {\scriptsize\insertinstitute\par}\par\vskip1em
    \insertdate\par\vskip1.5em
    \inserttitlegraphic
  \end{centering}
  \vfill
}
\end{verbatim}

If you wish to suppress the head and foot line in the title page, use
\verb!\plainframe{\titlepage}!.



\subsubsection{Background}

\paragraph{Predefined Templates}\ 

\Command{beamertemplateshadingbackground}
\Parameters{
\item A comma-separated rgb triple specifying the color at the page
  bottom.
\item A comma-separated rgb triple specifying the color at the top of
  the page.  
  }
\Description{Installs a vertically shaded background such that the
  specified bottom color changes smoothly to the specified top
  color. \textbf{Use with care: Background shadings are often
    distracting!} However, a very light shading with warm colors can
  make a presentation more lively.}
\Example
\begin{verbatim}
\beamertemplateshadingbackground{1,0.9,0.9}{0.9,0.9,1}
% Bottom is light red, top is light blue
\end{verbatim}

\Command{beamertemplategridbackground}
\Description{Installs a light grid as background.}

\paragraph{Template Changing Commands}\ 

\Command{usebackgroundtemplate}
\Parameters{
\item a template for the page background
  }
\Example
\begin{verbatim}
\usebackgroundtemplate{%
  \color{red}%
  \vrule  height\paperheight width\paperwidth%
}
\end{verbatim}


\subsubsection{Table of Contents}

\Command{usetemplatetocsection}
\Parameters{
\item a template for a section name in the table of contents.
\item a template for a grayed section name in the table of contents.
  }
\Example
\begin{verbatim}
\usetemplatetocsection
{\color{structure}\inserttocsection}
{\color{structureshaded}\inserttocsection}
\end{verbatim}

\Command{usetemplatetocsubsection}
\Parameters{
\item a template for a subsection name in the table of contents.
\item a template for a grayed subsection name in the table of contents.
  }
\Example
\begin{verbatim}
\usetemplatetocsubsection
{\leavevmode\leftskip=1.5em\color{black}\inserttocsubsection\par}
{\leavevmode\leftskip=1.5em\color{shaded}\inserttocsubsection\par}
\end{verbatim}


\subsubsection{Bibliography}

\label{section-bib-templates}

\paragraph{Predefined Templates}\

\Command{beamertemplatetextbibitems}
\Description{Shows the citation text in front of references in a
  bibliography instead of a small symbol.} 

\Command{beamertemplatearrowbibitems}
\Description{Changes the symbol before references in a bibliography to
  a small arrow.}

\Command{beamertemplatebookbibitems}
\Description{Changes the symbol before references in a bibliography to
  a small book icon.}

\Command{beamertemplatearticlebibitems}
\Description{Changes the symbol before references in a bibliography to
  a small article icon. (Default)}



\paragraph{Template Changes Commands}\ 

\Command{usebibitemtemplate}
\Parameters{
\item a template for the citation text before the entry. (The
  ``label'' of the item.)
}
\Description{
  Use \texttt{insertbiblabel} to insert the label text.
  }
\Example \verb!\usebibitemtemplate{\color{structure}\insertbiblabel}!


\Command{usebibliographyblocktemplate}
\Parameters{
\item a template to be inserted before the first block of the entry
  (the first block is all text before the first occurrence of a
  \texttt{newblock} command).
\item a template to be inserted before the second block (the text
  between the first and second occurrence of \texttt{newblock})
\item a template to be inserted before the third block
\item a template to be inserted before all other blocks
}
\Description{
  The templates are inserted \emph{before} the blocks and you do not
  have access to the blocks themselves via insert commands. In the
  following example, the first \texttt{par} commands ensure that the
  author, the title, and the journal are put on different lines. The
  color commands cause the author (first block) to be typeset using
  the theme color, the second block (title of the paper) to be typeset
  in black, and all other lines to be typeset in a washed-out version
  of the theme color. 
  }
\Example
\begin{verbatim}
  \usebibliographyblocktemplate
  {\color{structure}}
  {\par\color{black}}
  {\par\color{structuremedium}}
  {\par\color{structuremedium}}
\end{verbatim}




\subsubsection{Frame Titles}

\Command{useframetitletemplate}
\Parameters{
\item a template for the frame title
  }
\Example
\begin{verbatim}
\useframetitletemplate{%
  \begin{centering}
    \structure{\textbf{\insertframetitle}}
    \par
  \end{centering}
}
\end{verbatim}






\subsubsection{Head Lines and Foot Lines}

\label{section-head-templates}

\paragraph{Predefined Templates}\ 

\Command{beamertemplateheadempty}
\Description{Makes the head line empty.}

\Command{beamertemplatefootempty}
\Description{Makes the foot line empty.}

\Command{beamertemplatefootpagenumber}
\Description{Shows only the page number in the foot line.}


\paragraph{Template Changing Commands}\ 

\Command{usefoottemplate}
\Parameters{
\item a template for the foot line
  }
\Example
\begin{verbatim}
\usefoottemplate{\hfil\tiny{\color{shaded}\insertpagenumber}}
\end{verbatim}
or
\begin{verbatim}
\usefoottemplate{%
  \vbox{%
    \tinycolouredline{structuremedium}%
      {\color{white}\textbf{\insertshortauthor\hfill\insertshortinstitute}}%
    \tinycolouredline{structure}%
      {\color{white}\textbf{\insertshorttitle}\hfill}%
    }}
\end{verbatim}

\Command{useheadtemplate}
\Parameters{
\item a template for the head line
  }
\Example
\begin{verbatim}
\useheadtemplate{%
  \vbox{%
  \vskip3pt%
  \line{\insertnavigation{\paperwidth}}%
  \vskip1.5pt%
  \insertvrule{0.4pt}{structureshaded}}%
}
\end{verbatim}





\subsubsection{Side Bars}

\label{section-sidebar-templates}

Side bars are vertical areas that stretch from the lower end of the
head line to the top of the foot line. There can be a side bar at the
left and one at the right (or even both). Side bars can show a table
of contents, but they could also be added for purely aesthetic
reasons.

When you install a side bar template, you must explicitly specify the
horizontal size of the side bar. The vertical size is determined
automatically. Each side bar can have its own background, which can be
setup using special side background templates.

Adding a sidebar of a certain size, say 1cm, will make the main text
1cm narrower. The distance between the inner side of a side
bar and the outer side of the text, as specified by
the command \verb!\beamersetleftmargin! and its counterpart for the
right margin, is not changed when a side bar is installed.

Internally, the sidebars are typeset by showing them as part of the
headline. The \beamer\ class keeps track of six dimensions, three 
for each side: the variables \verb!\beamer@leftsidebar! and
\verb!\beamer@rightsidebar! store the (horizontal) sizes of the side
bars, the variables \verb!\beamer@leftmargin! and
\verb!\beamer@rightmargin! store the distance between sidebar and
text, and the macros \verb!\Gm@lmargin! and  \verb!\Gm@rmargin! store
the distance from the edge of the paper to the edge of the text. Thus
the sum \verb!\beamer@leftsidebar! and \verb!\beamer@leftmargin! is
exactly  \verb!\Gm@lmargin!. Thus, if you wish to put some text right
next to the left side bar, you might write
\verb!\hskip-\beamer@leftmargin! to get there.

In the following, only the commands for the left side bars are
listed. Each of these commands also exists for the right side bar,
with ``left'' replaced by ``right'' everywhere.


\Command{useleftsidebartemplate}
\Parameters{
\item the horizontal size of the left side bar.
\item a template for formating the left side bar.
  }
\Description{
  When the side bar is typeset, the template is invoked inside a
  \texttt{vbox} of the height of the side bar. Thus, the below example
  will produce a side bar of half a centimeter width, in which the word
  ``top'' is printed just below the head line and ``bottom'' is printed
  just above the foot line.
}
\Example
\begin{verbatim}
\useleftsidebartemplate{1cm}{
  top
  \vfill
  bottom
}
\end{verbatim}


\Command{useleftsidebarbackgroundtemplate}
\Parameters{
\item a template for the background of  the left side bar.
  }
\Description{
  The template is shown behind whatever is shown in the left side
  bar. 
}
\Example
\begin{verbatim}
\useleftsidebarbackgroundtemplate
  {\color{red}\vrule height\paperheight width\beamer@leftsidebar}
\end{verbatim}


\Command{useleftsidebarcolortemplate}
\Parameters{
\item A color command.
  }
\Description{
  Uses the given color as background for the side bar.
}
\Example
\begin{verbatim}
\useleftsidebarcolortemplate{\color{red}}
\useleftsidebarcolortemplate{\color[rgb]{1,0,0.5}}
\end{verbatim}


\Command{useleftsidebarverticalshadingtemplate}
\Parameters{
\item A comma-separated rgb triple specifying the color at the bottom
  of the side bar.
\item A comma-separated rgb triple specifying the color at the top
  of the side bar.
  }
\Description{
  Installs a smooth vertical transition between the given colors as
  background for the side bar.
}
\Example
\begin{verbatim}
\useleftsidebarverticalshadingtemplate{1,1,1}{1,0,0} % white to red
\end{verbatim}


\Command{useleftsidebarhorizontalshadingtemplate}
\Parameters{
\item A comma-separated rgb triple specifying the color at the left
  end of of the side bar.
\item A comma-separated rgb triple specifying the color at the right
  end of the side bar.
  }
\Description{
  Installs a smooth horizontal transition between the given colors as
  background for the side bar.
}
\Example
\begin{verbatim}
\useleftsidebarhorizontalshadingtemplate{1,1,1}{1,0,0} % white to red
\end{verbatim}








\subsubsection{Navigation Bars}


\paragraph{Predefined Templates}\ 

\Command{beamertemplateboxminiframe}
\Description{Changes the symbols in a navigation bar used to represent
  a frame to a small box.}

\Command{beamertemplateticksminiframe}
\Description{Changes the symbols in a navigation bar used to represent
  a frame to a small vertical bar of varying length.}


\paragraph{Template Changes Commands}\ 

\Command{usesectionheadtemplate}
\Parameters{
\item a template for the current section name in a navigation bar.
\item a template for a different section name in a navigation bar.
  }
\Example
\begin{verbatim}
\usesectionheadtemplate
{\color{structure}\tiny\insertsectionhead}
{\color{structureshaded}\tiny\insertsectionhead}
\end{verbatim}


\Command{usesubsectionheadtemplate}
\Parameters{
\item a template for the current subsection name in a navigation bar.
\item a template for a different subsection name in a navigation bar.
  }
\Example
\begin{verbatim}
\usesubsectionheadtemplate
{\color{structure}\tiny\insertsubsectionhead}
{\color{structureshaded}\tiny\insertsubsectionhead}
\end{verbatim}


\Command{useminislidetemplate}
\Parameters{
\item a template for the mini frame of the current frame in a navigation bar.
\item a template for the mini frame of a frame of the current
  subsection in a navigation bar.
\item a template for the mini frame of other frames in a navigation bar.
\item horizontal offset between mini frames.
\item vertical offset between mini frames.}
\Example
\begin{verbatim}
\useminislidetemplate
  {
    \color{structure}%
    \hskip-0.4pt\vrule height\boxsize width1.2pt%
  }  
  {%
    \color{structure}%
    \vrule height\boxsize width0.4pt%
  }
  {%
    \color{structureshaded}%
    \vrule height\boxsize width0.4pt%
  }
  {.1cm}
  {.05cm}
\end{verbatim}




\subsubsection{Footnotes}

\Command{usefootnotetemplate}
\Parameters{
\item A template for formating a footnote.
  }
\Example
\begin{verbatim}
\usefootnotetemplate{
  \parindent 1em
  \noindent
  \hbox to 1.8em{\hfil\insertfootnotemark}\insertfootnotetext}
\end{verbatim}





\subsubsection{Lists (Itemizations, Enumerations, Descriptions)}

\paragraph{Predefined Templates}\

\Command{beamertemplatedotitem}
\Description{Changes the symbols shown in an \texttt{itemize}
  environment to dots.}

\Command{beamertemplateballitem}
\Description{Changes the symbols shown in an \texttt{itemize}
  environment to small plastic balls.}


\paragraph{Template Changes Commands}\

\Command{useenumerateitemtemplate}
\Parameters{
\item a template for the default item in the top level of an
  enumeration. 
  }
\Example \verb!\useenumerateitemtemplate{\insertenumlabel}!

\Command{useitemizeitemtemplate}
\Parameters{
\item a template for the default item in the top level of an
  itemize list.
  }
\Example \verb!\useitemizeitemtemplate{\pgfuseimage{mybullet}}!

\Command{usesubitemizeitemtemplate}
\Parameters{
\item a template for the default item in the second level of an
  itemize list.
  }
\Example \verb!\usesubitemizeitemtemplate{\pgfuseimage{mysubbullet}}!

\Command{useitemizetemplate}
\Parameters{
\item a template for the beginning a top-level itemize list.
\item a template for the end of a top-level itemize list.
  }
\Example \verb!\useitemizetemplate{}{}!

\Command{usesubitemizetemplate}
\Parameters{
\item a template for the beginning a second-level itemize list.
\item a template for the end of a second-level itemize list.
  }
\Example \verb!\usesubitemizetemplate{\begin{small}}{\end{small}}!

\Command{useenumeratetemplate}
\Parameters{
\item a template for the beginning a top-level enumeration.
\item a template for the end of a top-level enumeration.
  }
\Example \verb!\useenumeratetemplate{}{}!

\Command{usesubenumerateitemtemplate}
\Parameters{
\item a template for the default item in the second level of an
  enumeration. 
  }
\Example
\verb!\usesubenumerateitemtemplate{\insertenumlabel-\insertsubenumlabel}!

\Command{usesubenumeratetemplate}
\Parameters{
\item a template for the beginning a second-level enumeration.
\item a template for the end of a second-level enumeration.
  }
\Example \verb!\usesubenumeratetemplate{\begin{small}}{\end{small}}!


\Command{usedescriptiontemplate}
\Parameters{
\item A template for the default item in a description. Use
  \texttt{insertdescriptionitem} to insert the current item text.
\item A default width for the default item, if no other width is
  specified; the width \texttt{labelsep} is automatically added to
  this parameter.
  }
\Example \verb!\usedescriptionitemtemplate{\color{structure}\insertdescriptionitem}{2cm}!



\subsubsection{Hilighting Commands}

\Command{usealerttemplate}
\Parameters{
\item a template for the \texttt{alert} command
  }
\Example \verb!\usealerttemplate{{\color{red}\insertalert}}!

\Command{usestructuretemplate}
\Parameters{
\item a template for the \texttt{structure} command
  }
\Example \verb!\usestructuretemplate{{\color{structure}\insertstructure}}!




\subsubsection{Block Environments}

\Command{useblocktemplate}
\Parameters{
\item a template for the beginning of the block.
\item a template for the end of the block.
  }
\Example
\begin{verbatim}
\useblocktemplate
  {%
   \medskip%
    {\color{blockstructure}\textbf{\insertblockname}}%
    \par%
  }
  {\medskip}
\end{verbatim}

\Command{usealertblocktemplate}
\Parameters{
\item a template for the beginning of the block.
\item a template for the end of the block.
  }
\Example
\begin{verbatim}
\usealertblocktemplate
  {%
    \medskip
    {\alert{\textbf{\insertblockname}}}%
  \par}
  {\medskip}
\end{verbatim}

\Command{useexampleblocktemplate}
\Parameters{
\item a template for the beginning of the block.
\item a template for the end of the block.
  }
\Example
\begin{verbatim}
\useexampleblocktemplate
  {%
    \medskip
    \begingroup\color{darkgreen}{\textbf{\insertblockname}}
    \par}
  {%
     \endgroup
     \medskip
  }
\end{verbatim}





\subsection{Template Inserts}

In the following, an alphabetical list of the different
\verb!\insertxxxx! commands is given. These commands are used inside
templates.


\Command{insertalert}
\Description{
  Inserts the current alerted text into a template.
}

\Command{insertauthor}
\Description{
  Inserts the one-line version of the author names into a template.
}

\Command{insertauthortitle}
\Description{
  Inserts a version of the author names into a template that is
  useful for the title page. 
}

\Command{insertbiblabel}
\Description{
  Inserts the current citation label into a template.
  }

\Command{insertblockname}
\Description{
  Inserts the name of the current block into a template.
}

\Command{insertdate}
\Description{
  Inserts the date into a template.
}

\Command{insertdescriptionitem}
\Description{
  Inserts the current item of a description environment into a
  template.
}

\Command{insertenumlabel}
\Description{
  Inserts the current number of the top-level enumeration (as an
  Arabic number) into a template.
}

\Command{insertfootnotemark}
\Description{
  Inserts the current footnote mark (like a raised number) into a
  template. 
}

\Command{insertfootnotetext}
\Description{
  Inserts the current footnote text into a template. 
}

\Command{insertframenumber}
\Description{
  Inserts the number of the current frame (not slide) into a template.
}

\Command{insertframetitle}
\Description{
  Inserts the current frame title into a template.
}

\Command{insertinstitute}
\Description{
  Inserts the institute into a template.
}

\Command{insertlogo}
\Description{
  Inserts the logo(s) into a template.
}

\Command{insertnavigation}
\Parameters{
\item a width
  }
\Description{
  Inserts a horizontal navigation bar of the given width into a
  template. The bar lists the sections and below them mini frames for
  each frame in that section.
}

\Command{insertpagenumber}
\Description{
  Inserts the current page number into a template.
}

\Command{insertsection}
\Description{
  Inserts the current section into a template.
}

\Command{insertsectionnavigation}
\Parameters{
\item a width
  }
\Description{
  Inserts a vertical navigation bar containing all sections, with the
  current section hilighted.
}

\Command{insertsectionnavigationhorizontal}
\Parameters{
\item a width
\item a text (typical a glue) to be inserted at the left
\item a text (typical a glue) to be inserted at the right
  }
\Description{
  Inserts a horizontal navigation bar containing all sections, with the
  current section hilighted. By inserting a triple fill (a
  \texttt{filll}) you can flush to bar to the left or right.
}
\Example
\begin{verbatim}
\insertsectionnavigationhorizontal{.5\textwidth}{\hskip0pt plus1filll}{}
\end{verbatim}

\Command{insertshortauthor}
\Description{
  Inserts the short version of the author into a template.
}

\Command{insertshortdate}
\Description{
  Inserts the short version of the date into a template.
}

\Command{insertshortinstitute}
\Description{
  Inserts the short version of the institute into a template.
}

\Command{insertshorttitle}
\Description{
  Inserts the short version of the document title into a template.
}

\Command{insertstructure}
\Description{
  Inserts the current structure text into a template.
}

\Command{insertsubenumlabel}
\Description{
  Inserts the current number of the second-level enumeration (as an
  Arabic number) into a template.
}

\Command{insertsubsection}
\Description{
  Inserts the current subsection into a template.
}

\Command{insertsubsectionnavigation}
\Parameters{
\item a width
  }
\Description{
  Inserts a vertical navigation bar containing all subsections of the
  current section, with the current subsection hilighted.
}

\Command{insertsubsectionnavigationhorizontal}
\Parameters{
\item a width
\item a text (typical a glue) to be inserted at the left
\item a text (typical a glue) to be inserted at the right
  }
\Description{
  Inserts a horizontal navigation bar containing all subsections, with the
  current section hilighted. By inserting a triple fill (a
  \texttt{filll}) you can flush to bar to the left or right.
}
\Example
\begin{verbatim}
\insertsubsectionnavigationhorizontal{.5\textwidth}{}{\hskip0pt plus1filll}
\end{verbatim}

\Command{inserttitle}
\Description{
  Inserts a version of the document title into a template that is
  useful for the title page. 
}

\Command{inserttitlegraphic}
\Description{
  Inserts the title graphic into a template.
}

\Command{inserttocsection}
\Description{
  Inserts the version of the current section name into a template that
  is useful for the table of contents.
  }

\Command{inserttocsubsection}
\Description{
  Inserts the version of the current subsection name into a template
  that is useful for the table of contents.
  }

\Command{insertvrule}
\Parameters{
\item a color
\item a thickness
  }
\Description{
  Inserts a rule of the given color and thickness into a
  template. 
  }

\end{document}