pub enum ColumnMode {
Auto,
Two,
Single,
}Expand description
Build a StructuredPage from reading-order spans + page dimensions.
Column-detection mode for build_structured_page_with_mode (issue #734
Fix 3). The geometric column split is heuristic — ISO 32000-1:2008 defines
no reading order for untagged content (§14.8.2.3) — so a consumer who knows
their layout may override the heuristic. This override applies only to the
geometric (Tier-3) path; it never overrides a trustworthy structure tree.
Variants§
Auto
Detect two-column bodies heuristically (the default).
Two
Force a two-column split: use the detected gutter, or the page midpoint when no clean gutter is found. For consumers who know the page is two-column (e.g. reference editions whose short, ragged lines the heuristic is conservative about).
Single
Treat the whole page as a single column — suppress all column detection
(column_index stays None).
Trait Implementations§
Source§impl Clone for ColumnMode
impl Clone for ColumnMode
Source§fn clone(&self) -> ColumnMode
fn clone(&self) -> ColumnMode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ColumnMode
Source§impl Debug for ColumnMode
impl Debug for ColumnMode
Source§impl Default for ColumnMode
impl Default for ColumnMode
Source§fn default() -> ColumnMode
fn default() -> ColumnMode
impl Eq for ColumnMode
Source§impl PartialEq for ColumnMode
impl PartialEq for ColumnMode
Source§fn eq(&self, other: &ColumnMode) -> bool
fn eq(&self, other: &ColumnMode) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ColumnMode
Auto Trait Implementations§
impl Freeze for ColumnMode
impl RefUnwindSafe for ColumnMode
impl Send for ColumnMode
impl Sync for ColumnMode
impl Unpin for ColumnMode
impl UnsafeUnpin for ColumnMode
impl UnwindSafe for ColumnMode
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().Source§impl<U, T> ToOwnedObj<U> for Twhere
U: FromObjRef<T>,
impl<U, T> ToOwnedObj<U> for Twhere
U: FromObjRef<T>,
Source§fn to_owned_obj(&self, data: FontData<'_>) -> U
fn to_owned_obj(&self, data: FontData<'_>) -> U
T, using the provided data to resolve any offsets.