summaryrefslogtreecommitdiff
path: root/info/tex-virtual-academy-pl/latex2e/macro/framed.html
blob: fbc827ad616ee58914f88abb231c83e8ee29708d (plain)
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
<html>
<head>
<title> Zastaw ciekawych makroinstrukcji </title>
<LINK REL="stylesheet" TYPE="text/css" HREF="mycss.css"/>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2"/>
<meta http-equiv="Content-language" content="pl"/>
<meta name="Author" content="W³odzimierz Macewicz"/>
<meta name="Keywords" content="tex, latex, makroinstrukcje, pakiety makroinstrukcji, Wirtualna Akademia, dokumentacja pakietów"/>
</head>
<body bgcolor=#a0f0a0>
<h2><a name="framed">framed</a></h2>

<p>Pakiet definiuje ¶rodowiska <code>framed</code>, <code>shaded</code> i
<code>leftbar</code>, które umo¿liwiaj±: ujêcie tekstu w ramkê, pod³o¿enie
kolorowego (lub szarego) t³a (pakiet korzysta z pakietu <a href="color.html">color</a>, <b>ale nale¿y</b> go samemu do³±czyæ)
oraz umieszczenie linii na brzegu (p. te¿ <a
href="changebar.html">changebar</a>). Opisywane konstrukcje  <b>nie zaburzaj±</b>
procesu ³amania na strony, ale wewn±trz nie mo¿na definiowaæ obiektów ruchomych (rysunki, tabele, noty na marginesie -- 
sygnalizowany jest b³±d, przypisy (footnote) -- pojawia siê odsy³acz, ale nie
pojawia siê tre¶æ przypisu, inkrementowany jest numer; nie jest sygnalizowany b³±d). Oprócz tego
zawarto¶æ ¶rodowiska nie jest rozci±gana w pionie w przypadku u¿ycia poleceñ
wymuszaj±cych przej¶cie do nowej strony.</p>

<h3>Opis ¶rodowisk</h3>
<h4><code>leftbar</code></h4>
Tekst zamkniêty w ¶rodowisku bêdzie oznaczony lini± pionow± z lewej strony (w
polu kolumny).
Linia ma 3pt grubo¶ci i odleg³o¶æ miêdzy lini± a tekstem wynosi 10pt (warto¶ci
te s± ,,zaszyte'' w definicji ¶rodowiska, ale ³atwo zdefiniowaæ w³asne, inne na
jego podstawie
<pre>
\newenvironment{leftbar}{%
  \def\FrameCommand{\vrule width 3pt \hspace{10pt}}%
  \MakeFramed {\advance\hsize-\width \FrameRestore}}%
 {\endMakeFramed}
</pre>
np. definicja
<pre>
\renewenvironment{leftbar}{%
  \def\FrameCommand{{\color{red}\vrule width 6pt} \hspace{10pt}}%
  \MakeFramed {\advance\hsize-\width \FrameRestore}}%
 {\endMakeFramed}
</pre>
da w efekcie linie o grubo¶ci 6pt w kolorze czerwonym (nale¿y do³±czyæ pakiet
<tt>color</tt>).

<h4><code>framed</code></h4>
<p>Do konstrukcji ramki u¿ywane jest standardowo makro <code>fbox</code>, je¶li nie zosta³o
zdefiniowane inaczej to grubo¶æ ramki ustala siê na warto¶æ
<code>fboxrule</code>, a odleg³o¶æ tekstu od ramki na <code>3 x \fboxsep</code>.
Powy¿sze parametry mo¿emy okre¶liæ nadaj±c warto¶ci rejestrom
<code>\FrameRule</code> oraz <code>\Framesep</code> np.
<code>\setlength{\FrameSep}{2pt}</code></p>

<p>Mo¿na ³atwo zmieniæ makro konstrukcyjne z <code>fbox</code> na inne i
uzyskaæ dodatkowe efekty; np:
 efekt kolorowej ramki i t³a; nale¿y u¿yæ makra
<code>\fcolorbox</code> z pakietu <a href"color.html">color</a> zamiast
konstrukcji <code>\fbox</code> np:
<pre>
\def\FrameCommand{\fboxrule=\FrameRule \fboxsep=\FrameSep \fcolorbox{red}{green}}
</pre>
w tym wypadku okre¶li³em kolor t³a na zielony, a kolor ramki na czerwony,
mo¿emy równie¿ przy okazji zmieniæ kolor czcionki:
<pre>
\def\FrameCommand{\fboxrule=\FrameRule \fboxsep=\FrameSep \color{blue}\fcolorbox{red}{green}}
</pre>
niebieski w tym wypadu.</p>
<p>Przy realizacji  tego ¶rodowiska u¿ywane jest ostatnio zdefiniowane makro
<code>\FrameCommand</code>, które w powy¿szych przyk³adach by³o definiowane
,,na zewn±trz''. Mo¿na zdefiniowaæ sobie kilka ¶rodowisk o ró¿nych cechach
(zachowuj±c grubo¶æ linii i jej odleg³o¶æ od tekstu) np.:
<pre>
\newenvironment{myframed}{%
  \def\FrameCommand{\fboxrule=\FrameRule \fboxsep=\FrameSep \color{yellow}\fcolorbox{green}{red}}
  \MakeFramed{\advance\hsize-\width \FrameRestore}}%
  {\endMakeFramed}
</pre>

<h4><code>shaded</code></h4>
<p>¦rodowisko s³u¿y, w zamy¶le, do pod³o¿enia kolorowego t³a pod tekst (powy¿ej
efekt ten zosta³ osi±gniêty dziêki modyfikacjom w definicji ¶rodowiska
<code>framed</code>). U¿ywanym kolorem t³a jest <tt>shadecolor</tt>; <b>musi on
byæ</b> wcze¶niej zdefiniowany poleceniem <code>\definecolor</code> (p. <a href"color.html">color</a>) np:
<pre>
\definecolor{shadecolor}{rgb}{0.1,0.2,0.8}
</pre>


<h4><code>MakeFramed</code></h4>
<p>Wspominam o nim jedynie dla porz±dku -- jest ono u¿ywane do definiowania
przedstawionych wcze¶niej ¶rodowisk -- wnikliwy TeX-owiec zapewne sam pozna
jego tajniki, innym radzê jego u¿ycie, analogicznie jak w podanych
przyk³adach.</p>

<hr>
<em>W³odzimierz Macewicz</em>
<hr>
Ostatnie zmiany: 05.05.2014.

</body>
</html>