15.07.2013 Views

xcoffins.pdf. - CTAN

xcoffins.pdf. - CTAN

xcoffins.pdf. - CTAN

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

\l__coffin_A_hpole_tl<br />

\l__coffin_A_vpole_tl<br />

\l__coffin_B_hpole_tl<br />

\l__coffin_B_vpole_tl<br />

\l__coffin_bound_box_grow_bool<br />

\l__coffin_hoffset_dim<br />

\l__coffin_voffset_dim<br />

\__coffin_design_names:N<br />

\Height<br />

\Depth<br />

\Width<br />

\TotalHeight<br />

\l__coffin_height_dim<br />

\l__coffin_depth_dim<br />

\l__coffin_width_dim<br />

\l__coffin_totalheight_dim<br />

2 〈@@=coffin〉<br />

3 \ProvidesExplPackage<br />

4 {\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}<br />

Key–value definitions for the alignment system. With the exception of grow-bounding-box,<br />

all of these have to be given with a value.<br />

5 \keys_define:nn { coffin }<br />

6 {<br />

7 coffin1-hpole .tl_set:N = \l__coffin_A_hpole_tl ,<br />

8 coffin1-hpole .value_required: ,<br />

9 coffin1-vpole .tl_set:N = \l__coffin_A_vpole_tl ,<br />

10 coffin1-vpole .value_required: ,<br />

11 coffin2-hpole .tl_set:N = \l__coffin_B_hpole_tl ,<br />

12 coffin2-hpole .value_required: ,<br />

13 coffin2-vpole .tl_set:N = \l__coffin_B_vpole_tl ,<br />

14 coffin2-vpole .value_required: ,<br />

15 grow-bounding-box .bool_set:N = \l__coffin_bound_box_grow_bool ,<br />

16 grow-bounding-box .default:n = true ,<br />

17 hoffset .dim_set:N = \l__coffin_hoffset_dim ,<br />

18 hoffset .value_required: ,<br />

19 voffset .dim_set:N = \l__coffin_voffset_dim ,<br />

20 voffset .value_required:<br />

21 }<br />

22 \keys_set:nn { coffin }<br />

23 {<br />

24 coffin1-hpole = H ,<br />

25 coffin1-vpole = l ,<br />

26 coffin2-hpole = H ,<br />

27 coffin2-vpole = l ,<br />

28 grow-bounding-box = true ,<br />

29 hoffset = 0 pt ,<br />

30 voffset = 0 pt<br />

31 }<br />

(End definition for \l__coffin_A_hpole_tl and others. These variables are documented on page ??.)<br />

Sets up design-level names for the various coffin dimensions. These are not defined<br />

outside of this scope, and are dimensions so that they work correctly inside for example<br />

\fp_eval:n.<br />

32 \cs_new_protected:Npn \__coffin_design_names:N #1<br />

33 {<br />

34 \dim_set:Nn \l__coffin_height_dim { \coffin_ht:N #1 }<br />

35 \dim_set:Nn \l__coffin_depth_dim { \coffin_dp:N #1 }<br />

36 \dim_set:Nn \l__coffin_width_dim { \coffin_wd:N #1 }<br />

37 \dim_set:Nn \l__coffin_totalheight_dim<br />

38 { \l__coffin_height_dim + \l__coffin_depth_dim }<br />

39 \cs_set_eq:NN \Height \l__coffin_height_dim<br />

40 \cs_set_eq:NN \Depth \l__coffin_depth_dim<br />

41 \cs_set_eq:NN \Width \l__coffin_width_dim<br />

42 \cs_set_eq:NN \TotalHeight \l__coffin_totalheight_dim<br />

10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!