mirror of
https://github.com/typst/typst
synced 2025-05-14 17:15:28 +08:00
59 lines
1.1 KiB
Typst
59 lines
1.1 KiB
Typst
// Test layout transformations
|
|
|
|
---
|
|
// Test that rotation impact layout.
|
|
#set page(width: 200pt)
|
|
#set rotate(reflow: true)
|
|
|
|
#let one(angle) = box(fill: aqua, rotate(angle)[Test Text])
|
|
#for angle in range(0, 360, step: 15) {
|
|
one(angle * 1deg)
|
|
}
|
|
|
|
---
|
|
// Test relative sizing in rotated boxes.
|
|
#set page(width: 200pt, height: 200pt)
|
|
#set text(size: 32pt)
|
|
#let rotated(body) = box(rotate(
|
|
90deg,
|
|
box(stroke: 0.5pt, height: 20%, clip: true, body)
|
|
))
|
|
|
|
#set rotate(reflow: false)
|
|
Hello #rotated[World]!\
|
|
|
|
#set rotate(reflow: true)
|
|
Hello #rotated[World]!
|
|
|
|
---
|
|
// Test that scaling impact layout.
|
|
#set page(width: 200pt)
|
|
#set text(size: 32pt)
|
|
#let scaled(body) = box(scale(
|
|
x: 20%,
|
|
y: 40%,
|
|
body
|
|
))
|
|
|
|
#set scale(reflow: false)
|
|
Hello #scaled[World]!
|
|
|
|
#set scale(reflow: true)
|
|
Hello #scaled[World]!
|
|
|
|
---
|
|
// Test relative sizing in scaled boxes.
|
|
#set page(width: 200pt, height: 200pt)
|
|
#set text(size: 32pt)
|
|
#let scaled(body) = box(scale(
|
|
x: 60%,
|
|
y: 40%,
|
|
box(stroke: 0.5pt, width: 30%, clip: true, body)
|
|
))
|
|
|
|
#set scale(reflow: false)
|
|
Hello #scaled[World]!\
|
|
|
|
#set scale(reflow: true)
|
|
Hello #scaled[World]!
|