summaryrefslogtreecommitdiff
path: root/tests/typ/graphics/shape-circle.typ
blob: dc1e3f242d743555714e30fdb28ad98193332375 (plain) (blame)
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
// Test the `circle` function.

---
// Default circle.
#circle()
#circle[Hey]

---
// Test auto sizing.

Auto-sized circle. \
#circle(fill: rgb("eb5278"), stroke: 2pt + black,
  align(center + horizon)[But, soft!]
)

Center-aligned rect in auto-sized circle.
#circle(fill: forest, stroke: conifer,
  align(center + horizon,
    rect(fill: conifer, padding: 5pt)[But, soft!]
  )
)

Rect in auto-sized circle. \
#circle(fill: forest,
  rect(fill: conifer, stroke: white, padding: 4pt)[
    #set text(8pt)
    But, soft! what light through yonder window breaks?
  ]
)

Expanded by height.
#circle(stroke: black, align(center)[A \ B \ C])

---
// Ensure circle directly in rect works.
#rect(width: 40pt, height: 30pt, fill: forest, circle(fill: conifer))

---
// Test relative sizing.
#let centered(body) = align(center + horizon, body)
#set text(fill: white)
#rect(width: 100pt, height: 50pt, fill: rgb("aaa"), centered[
  #circle(radius: 10pt, fill: eastern, centered[A])      // D=20pt
  #circle(height: 60%, fill: eastern, centered[B])       // D=30pt
  #circle(width: 20% + 20pt, fill: eastern, centered[C]) // D=40pt
])

---
// Radius wins over width and height.
// Error: 23-34 unexpected argument
#circle(radius: 10pt, width: 50pt, height: 100pt, fill: eastern)