pub struct TableCell {
pub body: Content,
/* private fields */
}
Expand description
A cell in the table. Use this to position a cell manually or to apply styling. To do the latter, you can either use the function to override the properties for a particular cell, or use it in show rules to apply certain styles to multiple cells at once.
Perhaps the most important use case of {table.cell}
is to make a cell span
multiple columns and/or rows with the colspan
and rowspan
fields.
>>> #set page(width: auto)
#show table.cell.where(y: 0): strong
#set table(
stroke: (x, y) => if y == 0 {
(bottom: 0.7pt + black)
},
align: (x, y) => (
if x > 0 { center }
else { left }
)
)
#table(
columns: 3,
table.header(
[Substance],
[Subcritical °C],
[Supercritical °C],
),
[Hydrochloric Acid],
[12.0], [92.1],
[Sodium Myreth Sulfate],
[16.6], [104],
[Potassium Hydroxide],
table.cell(colspan: 2)[24.7],
)
For example, you can override the fill, alignment or inset for a single cell:
>>> #set page(width: auto)
// You can also import those.
#import table: cell, header
#table(
columns: 2,
align: center,
header(
[*Trip progress*],
[*Itinerary*],
),
cell(
align: right,
fill: fuchsia.lighten(80%),
[🚗],
),
[Get in, folks!],
[🚗], [Eat curbside hotdog],
cell(align: left)[🌴🚗],
cell(
inset: 0.06em,
text(1.62em)[🛖🌅🌊],
),
)
You may also apply a show rule on table.cell
to style all cells at once.
Combined with selectors, this allows you to apply styles based on a cell’s
position:
#show table.cell.where(x: 0): strong
#table(
columns: 3,
gutter: 3pt,
[Name], [Age], [Strength],
[Hannes], [36], [Grace],
[Irma], [50], [Resourcefulness],
[Vikram], [49], [Perseverance],
)
Fields§
§body: Content
Implementations§
Source§impl TableCell
impl TableCell
Sourcepub fn with_colspan(self, colspan: NonZeroUsize) -> Self
pub fn with_colspan(self, colspan: NonZeroUsize) -> Self
Builder-style setter for the colspan
field.
Sourcepub fn with_rowspan(self, rowspan: NonZeroUsize) -> Self
pub fn with_rowspan(self, rowspan: NonZeroUsize) -> Self
Builder-style setter for the rowspan
field.
Sourcepub fn with_fill(self, fill: Smart<Option<Paint>>) -> Self
pub fn with_fill(self, fill: Smart<Option<Paint>>) -> Self
Builder-style setter for the fill
field.
Sourcepub fn with_align(self, align: Smart<Alignment>) -> Self
pub fn with_align(self, align: Smart<Alignment>) -> Self
Builder-style setter for the align
field.
Sourcepub fn with_inset(self, inset: Smart<Sides<Option<Rel<Length>>>>) -> Self
pub fn with_inset(self, inset: Smart<Sides<Option<Rel<Length>>>>) -> Self
Builder-style setter for the inset
field.
Sourcepub fn with_stroke(self, stroke: Sides<Option<Option<Arc<Stroke>>>>) -> Self
pub fn with_stroke(self, stroke: Sides<Option<Option<Arc<Stroke>>>>) -> Self
Builder-style setter for the stroke
field.
Sourcepub fn with_breakable(self, breakable: Smart<bool>) -> Self
pub fn with_breakable(self, breakable: Smart<bool>) -> Self
Builder-style setter for the breakable
field.
Sourcepub fn push_colspan(&mut self, colspan: NonZeroUsize)
pub fn push_colspan(&mut self, colspan: NonZeroUsize)
Setter for the colspan
field.
Sourcepub fn push_rowspan(&mut self, rowspan: NonZeroUsize)
pub fn push_rowspan(&mut self, rowspan: NonZeroUsize)
Setter for the rowspan
field.
Sourcepub fn push_align(&mut self, align: Smart<Alignment>)
pub fn push_align(&mut self, align: Smart<Alignment>)
Setter for the align
field.
Sourcepub fn push_inset(&mut self, inset: Smart<Sides<Option<Rel<Length>>>>)
pub fn push_inset(&mut self, inset: Smart<Sides<Option<Rel<Length>>>>)
Setter for the inset
field.
Sourcepub fn push_stroke(&mut self, stroke: Sides<Option<Option<Arc<Stroke>>>>)
pub fn push_stroke(&mut self, stroke: Sides<Option<Option<Arc<Stroke>>>>)
Setter for the stroke
field.
Sourcepub fn push_breakable(&mut self, breakable: Smart<bool>)
pub fn push_breakable(&mut self, breakable: Smart<bool>)
Setter for the breakable
field.
Sourcepub fn x(&self, styles: StyleChain<'_>) -> Smart<usize>
pub fn x(&self, styles: StyleChain<'_>) -> Smart<usize>
The cell’s column (zero-indexed).
Functions identically to the x
field in grid.cell
.
Sourcepub fn y(&self, styles: StyleChain<'_>) -> Smart<usize>
pub fn y(&self, styles: StyleChain<'_>) -> Smart<usize>
The cell’s row (zero-indexed).
Functions identically to the y
field in grid.cell
.
Sourcepub fn colspan(&self, styles: StyleChain<'_>) -> NonZeroUsize
pub fn colspan(&self, styles: StyleChain<'_>) -> NonZeroUsize
The amount of columns spanned by this cell.
Sourcepub fn rowspan(&self, styles: StyleChain<'_>) -> NonZeroUsize
pub fn rowspan(&self, styles: StyleChain<'_>) -> NonZeroUsize
The amount of rows spanned by this cell.
Sourcepub fn inset(&self, styles: StyleChain<'_>) -> Smart<Sides<Option<Rel<Length>>>>
pub fn inset(&self, styles: StyleChain<'_>) -> Smart<Sides<Option<Rel<Length>>>>
The cell’s inset override.
Sourcepub fn stroke(
&self,
styles: StyleChain<'_>,
) -> <Sides<Option<Option<Arc<Stroke>>>> as Resolve>::Output
pub fn stroke( &self, styles: StyleChain<'_>, ) -> <Sides<Option<Option<Arc<Stroke>>>> as Resolve>::Output
The cell’s stroke override.
Sourcepub fn breakable(&self, styles: StyleChain<'_>) -> Smart<bool>
pub fn breakable(&self, styles: StyleChain<'_>) -> Smart<bool>
Whether rows spanned by this cell can be placed in different pages.
When equal to {auto}
, a cell spanning only fixed-size rows is
unbreakable, while a cell spanning at least one {auto}
-sized row is
breakable.
Sourcepub fn x_in(styles: StyleChain<'_>) -> Smart<usize>
pub fn x_in(styles: StyleChain<'_>) -> Smart<usize>
Access the x
field in the given style chain.
Sourcepub fn y_in(styles: StyleChain<'_>) -> Smart<usize>
pub fn y_in(styles: StyleChain<'_>) -> Smart<usize>
Access the y
field in the given style chain.
Sourcepub fn colspan_in(styles: StyleChain<'_>) -> NonZeroUsize
pub fn colspan_in(styles: StyleChain<'_>) -> NonZeroUsize
Access the colspan
field in the given style chain.
Sourcepub fn rowspan_in(styles: StyleChain<'_>) -> NonZeroUsize
pub fn rowspan_in(styles: StyleChain<'_>) -> NonZeroUsize
Access the rowspan
field in the given style chain.
Sourcepub fn fill_in(styles: StyleChain<'_>) -> Smart<Option<Paint>>
pub fn fill_in(styles: StyleChain<'_>) -> Smart<Option<Paint>>
Access the fill
field in the given style chain.
Sourcepub fn align_in(styles: StyleChain<'_>) -> Smart<Alignment>
pub fn align_in(styles: StyleChain<'_>) -> Smart<Alignment>
Access the align
field in the given style chain.
Sourcepub fn inset_in(styles: StyleChain<'_>) -> Smart<Sides<Option<Rel<Length>>>>
pub fn inset_in(styles: StyleChain<'_>) -> Smart<Sides<Option<Rel<Length>>>>
Access the inset
field in the given style chain.
Sourcepub fn stroke_in(
styles: StyleChain<'_>,
) -> <Sides<Option<Option<Arc<Stroke>>>> as Resolve>::Output
pub fn stroke_in( styles: StyleChain<'_>, ) -> <Sides<Option<Option<Arc<Stroke>>>> as Resolve>::Output
Access the stroke
field in the given style chain.
Sourcepub fn breakable_in(styles: StyleChain<'_>) -> Smart<bool>
pub fn breakable_in(styles: StyleChain<'_>) -> Smart<bool>
Access the breakable
field in the given style chain.
Sourcepub fn set_colspan(colspan: NonZeroUsize) -> Property
pub fn set_colspan(colspan: NonZeroUsize) -> Property
Create a style property for the colspan
field.
Sourcepub fn set_rowspan(rowspan: NonZeroUsize) -> Property
pub fn set_rowspan(rowspan: NonZeroUsize) -> Property
Create a style property for the rowspan
field.
Sourcepub fn set_fill(fill: Smart<Option<Paint>>) -> Property
pub fn set_fill(fill: Smart<Option<Paint>>) -> Property
Create a style property for the fill
field.
Sourcepub fn set_align(align: Smart<Alignment>) -> Property
pub fn set_align(align: Smart<Alignment>) -> Property
Create a style property for the align
field.
Sourcepub fn set_inset(inset: Smart<Sides<Option<Rel<Length>>>>) -> Property
pub fn set_inset(inset: Smart<Sides<Option<Rel<Length>>>>) -> Property
Create a style property for the inset
field.
Sourcepub fn set_stroke(stroke: Sides<Option<Option<Arc<Stroke>>>>) -> Property
pub fn set_stroke(stroke: Sides<Option<Option<Arc<Stroke>>>>) -> Property
Create a style property for the stroke
field.
Sourcepub fn set_breakable(breakable: Smart<bool>) -> Property
pub fn set_breakable(breakable: Smart<bool>) -> Property
Create a style property for the breakable
field.
Trait Implementations§
Source§impl Fields for TableCell
impl Fields for TableCell
Source§fn field(&self, id: u8) -> Result<Value, FieldAccessError>
fn field(&self, id: u8) -> Result<Value, FieldAccessError>
Source§fn field_with_styles(
&self,
id: u8,
styles: StyleChain<'_>,
) -> Result<Value, FieldAccessError>
fn field_with_styles( &self, id: u8, styles: StyleChain<'_>, ) -> Result<Value, FieldAccessError>
Source§fn field_from_styles(
id: u8,
styles: StyleChain<'_>,
) -> Result<Value, FieldAccessError>
fn field_from_styles( id: u8, styles: StyleChain<'_>, ) -> Result<Value, FieldAccessError>
Source§fn materialize(&mut self, styles: StyleChain<'_>)
fn materialize(&mut self, styles: StyleChain<'_>)
Source§impl FromValue for TableCell
impl FromValue for TableCell
Source§fn from_value(value: Value) -> HintedStrResult<Self>
fn from_value(value: Value) -> HintedStrResult<Self>
Self
.Source§impl NativeElement for TableCell
impl NativeElement for TableCell
Auto Trait Implementations§
impl Freeze for TableCell
impl !RefUnwindSafe for TableCell
impl Send for TableCell
impl Sync for TableCell
impl Unpin for TableCell
impl !UnwindSafe for TableCell
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters
when converting.Source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self
into C
, using the provided parameters.Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle
.Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other
into Self
, while performing the appropriate scaling,
rounding and clamping.Source§impl<T> FromValue<Spanned<Value>> for Twhere
T: FromValue,
impl<T> FromValue<Spanned<Value>> for Twhere
T: FromValue,
Source§fn from_value(value: Spanned<Value>) -> Result<T, HintedString>
fn from_value(value: Spanned<Value>) -> Result<T, HintedString>
Self
.Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
T
.Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters
when converting.Source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self
into C
, using the provided parameters.Source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
fn into_color(self) -> U
Source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoResult for Twhere
T: IntoValue,
impl<T> IntoResult for Twhere
T: IntoValue,
Source§fn into_result(self, _: Span) -> Result<Value, EcoVec<SourceDiagnostic>>
fn into_result(self, _: Span) -> Result<Value, EcoVec<SourceDiagnostic>>
Source§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self
into T
, while performing the appropriate scaling,
rounding and clamping.Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors
fails to cast.Source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
Source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds
error is returned which contains
the unclamped color. Read more