mirror of
https://github.com/typst/typst
synced 2025-05-14 17:15:28 +08:00
Get numbering of page counter from style chain (#5589)
This commit is contained in:
parent
75273937f7
commit
51020fcf3c
@ -366,20 +366,22 @@ impl Counter {
|
|||||||
.custom()
|
.custom()
|
||||||
.or_else(|| {
|
.or_else(|| {
|
||||||
let styles = styles?;
|
let styles = styles?;
|
||||||
let CounterKey::Selector(Selector::Elem(func, _)) = self.0 else {
|
match self.0 {
|
||||||
return None;
|
CounterKey::Page => PageElem::numbering_in(styles).clone(),
|
||||||
};
|
CounterKey::Selector(Selector::Elem(func, _)) => {
|
||||||
|
if func == HeadingElem::elem() {
|
||||||
if func == HeadingElem::elem() {
|
HeadingElem::numbering_in(styles).clone()
|
||||||
HeadingElem::numbering_in(styles).clone()
|
} else if func == FigureElem::elem() {
|
||||||
} else if func == FigureElem::elem() {
|
FigureElem::numbering_in(styles).clone()
|
||||||
FigureElem::numbering_in(styles).clone()
|
} else if func == EquationElem::elem() {
|
||||||
} else if func == EquationElem::elem() {
|
EquationElem::numbering_in(styles).clone()
|
||||||
EquationElem::numbering_in(styles).clone()
|
} else if func == FootnoteElem::elem() {
|
||||||
} else if func == FootnoteElem::elem() {
|
Some(FootnoteElem::numbering_in(styles).clone())
|
||||||
Some(FootnoteElem::numbering_in(styles).clone())
|
} else {
|
||||||
} else {
|
None
|
||||||
None
|
}
|
||||||
|
}
|
||||||
|
_ => None,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.unwrap_or_else(|| NumberingPattern::from_str("1.1").unwrap().into());
|
.unwrap_or_else(|| NumberingPattern::from_str("1.1").unwrap().into());
|
||||||
|
BIN
tests/ref/counter-page-display.png
Normal file
BIN
tests/ref/counter-page-display.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 150 B |
@ -102,6 +102,14 @@ B
|
|||||||
#set page(numbering: "1 / 1", margin: (bottom: 20pt))
|
#set page(numbering: "1 / 1", margin: (bottom: 20pt))
|
||||||
#counter(page).update(5)
|
#counter(page).update(5)
|
||||||
|
|
||||||
|
--- counter-page-display ---
|
||||||
|
// Counter display should use numbering from style chain.
|
||||||
|
#set page(
|
||||||
|
numbering: "A",
|
||||||
|
margin: (bottom: 20pt),
|
||||||
|
footer: context align(center, counter(page).display())
|
||||||
|
)
|
||||||
|
|
||||||
--- counter-figure ---
|
--- counter-figure ---
|
||||||
// Count figures.
|
// Count figures.
|
||||||
#figure(numbering: "A", caption: [Four 'A's], kind: image, supplement: "Figure")[_AAAA!_]
|
#figure(numbering: "A", caption: [Four 'A's], kind: image, supplement: "Figure")[_AAAA!_]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user