85 KiB
API Reference
Cell Module
cell
using xlnt::cell::type = cell_type
Alias xlnt::cell_type to xlnt::cell::type since it looks nicer.
friend class detail::xlsx_consumer
friend class detail::xlsx_producer
friend struct detail::cell_impl
static const std::unordered_map<std::string, int>& xlnt::cell::error_codes
Return a map of error strings such as #DIV/0! and their associated indices.
xlnt::cell::cell
Default copy constructor.
bool xlnt::cell::has_value
Return true if value has been set and has not been cleared using cell::clear_value().
T xlnt::cell::value
Return the value of this cell as an instance of type T. Overloads exist for most C++ fundamental types like bool, int, etc. as well as for std::string and xlnt datetime types: date, time, datetime, and timedelta.
void xlnt::cell::clear_value
Make this cell have a value of type null. All other cell attributes are retained.
void xlnt::cell::value
Set the value of this cell to the given value. Overloads exist for most C++ fundamental types like bool, int, etc. as well as for std::string and xlnt datetime types: date, time, datetime, and timedelta.
void xlnt::cell::value
Analyze string_value to determine its type, convert it to that type, and set the value of this cell to that converted value.
type xlnt::cell::data_type
Return the type of this cell.
void xlnt::cell::data_type
Set the type of this cell.
bool xlnt::cell::garbage_collectible
There's no reason to keep a cell which has no value and is not a placeholder. Return true if this cell has no value, style, isn't merged, etc.
bool xlnt::cell::is_date
Return true iff this cell's number format matches a date format.
cell_reference xlnt::cell::reference
Return a cell_reference that points to the location of this cell.
column_t xlnt::cell::column
Return the column of this cell.
row_t xlnt::cell::row
Return the row of this cell.
std::pair<int, int> xlnt::cell::anchor
Return the location of this cell as an ordered pair.
std::string xlnt::cell::hyperlink
Return the URL of this cell's hyperlink.
void xlnt::cell::hyperlink
Add a hyperlink to this cell pointing to the URI of the given value.
bool xlnt::cell::has_hyperlink
Return true if this cell has a hyperlink set.
class alignment xlnt::cell::computed_alignment
Returns the result of computed_format().alignment().
class border xlnt::cell::computed_border
Returns the result of computed_format().border().
class fill xlnt::cell::computed_fill
Returns the result of computed_format().fill().
class font xlnt::cell::computed_font
Returns the result of computed_format().font().
class number_format xlnt::cell::computed_number_format
Returns the result of computed_format().number_format().
class protection xlnt::cell::computed_protection
Returns the result of computed_format().protection().
bool xlnt::cell::has_format
Return true if this cell has had a format applied to it.
const class format xlnt::cell::format
Return a reference to the format applied to this cell. If this cell has no format, an invalid_attribute exception will be thrown.
void xlnt::cell::format
Applies the cell-level formatting of new_format to this cell.
void xlnt::cell::clear_format
Remove the cell-level formatting from this cell. This doesn't affect the style that may also be applied to the cell. Throws an invalid_attribute exception if no format is applied.
class number_format xlnt::cell::number_format
Returns the number format of this cell.
void xlnt::cell::number_format
Creates a new format in the workbook, sets its number_format to the given format, and applies the format to this cell.
class font xlnt::cell::font
Returns the font applied to the text in this cell.
void xlnt::cell::font
Creates a new format in the workbook, sets its font to the given font, and applies the format to this cell.
class fill xlnt::cell::fill
Returns the fill applied to this cell.
void xlnt::cell::fill
Creates a new format in the workbook, sets its fill to the given fill, and applies the format to this cell.
class border xlnt::cell::border
Returns the border of this cell.
void xlnt::cell::border
Creates a new format in the workbook, sets its border to the given border, and applies the format to this cell.
class alignment xlnt::cell::alignment
Returns the alignment of the text in this cell.
void xlnt::cell::alignment
Creates a new format in the workbook, sets its alignment to the given alignment, and applies the format to this cell.
class protection xlnt::cell::protection
Returns the protection of this cell.
void xlnt::cell::protection
Creates a new format in the workbook, sets its protection to the given protection, and applies the format to this cell.
bool xlnt::cell::has_style
Returns true if this cell has had a style applied to it.
const class style xlnt::cell::style
Returns a wrapper pointing to the named style applied to this cell.
void xlnt::cell::style
Equivalent to style(new_style.name())
void xlnt::cell::style
Sets the named style applied to this cell to a style named style_name. If this style has not been previously created in the workbook, a key_not_found exception will be thrown.
void xlnt::cell::clear_style
Removes the named style from this cell. An invalid_attribute exception will be thrown if this cell has no style. This will not affect the cell format of the cell.
std::string xlnt::cell::formula
Returns the string representation of the formula applied to this cell.
void xlnt::cell::formula
Sets the formula of this cell to the given value. This formula string should begin with '='.
void xlnt::cell::clear_formula
Removes the formula from this cell. After this is called, has_formula() will return false.
bool xlnt::cell::has_formula
Returns true if this cell has had a formula applied to it.
std::string xlnt::cell::to_string
Returns a string representing the value of this cell. If the data type is not a string, it will be converted according to the number format.
bool xlnt::cell::is_merged
Return true iff this cell has been merged with one or more surrounding cells.
void xlnt::cell::merged
Make this a merged cell iff merged is true. Generally, this shouldn't be called directly. Instead, use worksheet::merge_cells on its parent worksheet.
std::string xlnt::cell::error
Return the error string that is stored in this cell.
void xlnt::cell::error
Directly assign the value of this cell to be the given error.
cell xlnt::cell::offset
Return a cell from this cell's parent workbook at a relative offset given by the parameters.
class worksheet xlnt::cell::worksheet
Return the worksheet that owns this cell.
const class worksheet xlnt::cell::worksheet
Return the worksheet that owns this cell.
class workbook& xlnt::cell::workbook
Return the workbook of the worksheet that owns this cell.
const class workbook& xlnt::cell::workbook
Return the workbook of the worksheet that owns this cell.
calendar xlnt::cell::base_date
Shortcut to return the base date of the parent workbook. Equivalent to workbook().properties().excel_base_date
std::string xlnt::cell::check_string
Return to_check after checking encoding, size, and illegal characters.
bool xlnt::cell::has_comment
Return true if this cell has a comment applied.
void xlnt::cell::clear_comment
Delete the comment applied to this cell if it exists.
class comment xlnt::cell::comment
Get the comment applied to this cell.
void xlnt::cell::comment
Create a new comment with the given text and optional author and apply it to the cell.
void xlnt::cell::comment
Create a new comment with the given text, formatting, and optional author and apply it to the cell.
void xlnt::cell::comment
Apply the comment provided as the only argument to the cell.
double xlnt::cell::width
double xlnt::cell::height
cell& xlnt::cell::operator=
Make this cell point to rhs. The cell originally pointed to by this cell will be unchanged.
bool xlnt::cell::operator==
Return true if this cell the same cell as comparand (compare by reference).
bool xlnt::cell::operator==
Return true if this cell is uninitialized.
cell_reference_hash
std::size_t xlnt::cell_reference_hash::operator()
cell_reference
static std::pair<std::string, row_t> xlnt::cell_reference::split_reference
Split a coordinate string like "A1" into an equivalent pair like {"A", 1}.
static std::pair<std::string, row_t> xlnt::cell_reference::split_reference
Split a coordinate string like "A1" into an equivalent pair like {"A", 1}. Reference parameters absolute_column and absolute_row will be set to true if column part or row part are prefixed by a dollar-sign indicating they are absolute, otherwise false.
xlnt::cell_reference::cell_reference
Default constructor makes a reference to the top-left-most cell, "A1".
xlnt::cell_reference::cell_reference
Constructs a cell_reference from a string reprenting a cell coordinate (e.g. $B14).
xlnt::cell_reference::cell_reference
Constructs a cell_reference from a string reprenting a cell coordinate (e.g. $B14).
xlnt::cell_reference::cell_reference
Constructs a cell_reference from a 1-indexed column index and row index.
cell_reference& xlnt::cell_reference::make_absolute
Convert a coordinate to an absolute coordinate string (e.g. B12 -> $B$12) Defaulting to true, absolute_column and absolute_row can optionally control whether the resulting cell_reference has an absolute column (e.g. B12 -> $B12) and absolute row (e.g. B12 -> B$12) respectively.
bool xlnt::cell_reference::column_absolute
Return true if the reference refers to an absolute column, otherwise false.
void xlnt::cell_reference::column_absolute
Make this reference have an absolute column if absolute_column is true, otherwise not absolute.
bool xlnt::cell_reference::row_absolute
Return true if the reference refers to an absolute row, otherwise false.
void xlnt::cell_reference::row_absolute
Make this reference have an absolute row if absolute_row is true, otherwise not absolute.
column_t xlnt::cell_reference::column
Return a string that identifies the column of this reference (e.g. second column from left is "B")
void xlnt::cell_reference::column
Set the column of this reference from a string that identifies a particular column.
column_t::index_t xlnt::cell_reference::column_index
Return a 1-indexed numeric index of the column of this reference.
void xlnt::cell_reference::column_index
Set the column of this reference from a 1-indexed number that identifies a particular column.
row_t xlnt::cell_reference::row
Return a 1-indexed numeric index of the row of this reference.
void xlnt::cell_reference::row
Set the row of this reference from a 1-indexed number that identifies a particular row.
cell_reference xlnt::cell_reference::make_offset
Return a cell_reference offset from this cell_reference by the number of columns and rows specified by the parameters. A negative value for column_offset or row_offset results in a reference above or left of this cell_reference, respectively.
std::string xlnt::cell_reference::to_string
Return a string like "A1" for cell_reference(1, 1).
range_reference xlnt::cell_reference::to_range
Return a 1x1 range_reference containing only this cell_reference.
range_reference xlnt::cell_reference::operator,
I've always wanted to overload the comma operator. cell_reference("A", 1), cell_reference("B", 1) will return range_reference(cell_reference("A", 1), cell_reference("B", 1))
bool xlnt::cell_reference::operator==
Return true if this reference is identical to comparand including in absoluteness of column and row.
bool xlnt::cell_reference::operator==
Construct a cell_reference from reference_string and return the result of their comparison.
bool xlnt::cell_reference::operator==
Construct a cell_reference from reference_string and return the result of their comparison.
bool xlnt::cell_reference::operator!=
Return true if this reference is not identical to comparand including in absoluteness of column and row.
bool xlnt::cell_reference::operator!=
Construct a cell_reference from reference_string and return the result of their comparison.
bool xlnt::cell_reference::operator!=
Construct a cell_reference from reference_string and return the result of their comparison.
comment
xlnt::comment::comment
Constructs a new blank comment.
xlnt::comment::comment
Constructs a new comment with the given text and author.
xlnt::comment::comment
Constructs a new comment with the given unformatted text and author.
rich_text xlnt::comment::text
Return the text that will be displayed for this comment.
std::string xlnt::comment::plain_text
Return the plain text that will be displayed for this comment without formatting information.
std::string xlnt::comment::author
Return the author of this comment.
void xlnt::comment::hide
Make this comment only visible when the associated cell is hovered.
void xlnt::comment::show
Make this comment always visible.
bool xlnt::comment::visible
Returns true if this comment is not hidden.
void xlnt::comment::position
Set the absolute position of this cell to the given coordinates.
int xlnt::comment::left
Returns the distance from the left side of the sheet to the left side of the comment.
int xlnt::comment::top
Returns the distance from the top of the sheet to the top of the comment.
void xlnt::comment::size
Set the size of the comment.
int xlnt::comment::width
Returns the width of this comment.
int xlnt::comment::height
Returns the height of this comment.
bool operator==
Return true if both comments are equivalent.
column_t
using xlnt::column_t::index_t = std::uint32_t
index_t xlnt::column_t::index
Internal numeric value of this column index.
static index_t xlnt::column_t::column_index_from_string
Convert a column letter into a column number (e.g. B -> 2)
static std::string xlnt::column_t::column_string_from_index
Convert a column number into a column letter (3 -> 'C')
xlnt::column_t::column_t
Default column_t is the first (left-most) column.
xlnt::column_t::column_t
Construct a column from a number.
xlnt::column_t::column_t
Construct a column from a string.
xlnt::column_t::column_t
Construct a column from a string.
xlnt::column_t::column_t
Copy constructor
xlnt::column_t::column_t
Move constructor
std::string xlnt::column_t::column_string
Return a string representation of this column index.
column_t& xlnt::column_t::operator=
Set this column to be the same as rhs's and return reference to self.
column_t& xlnt::column_t::operator=
Set this column to be equal to rhs and return reference to self.
column_t& xlnt::column_t::operator=
Set this column to be equal to rhs and return reference to self.
bool xlnt::column_t::operator==
Return true if this column refers to the same column as other.
bool xlnt::column_t::operator!=
Return true if this column doesn't refer to the same column as other.
bool xlnt::column_t::operator==
Return true if this column refers to the same column as other.
bool xlnt::column_t::operator==
Return true if this column refers to the same column as other.
bool xlnt::column_t::operator==
Return true if this column refers to the same column as other.
bool xlnt::column_t::operator==
Return true if this column refers to the same column as other.
bool xlnt::column_t::operator!=
Return true if this column doesn't refer to the same column as other.
bool xlnt::column_t::operator!=
Return true if this column doesn't refer to the same column as other.
bool xlnt::column_t::operator!=
Return true if this column doesn't refer to the same column as other.
bool xlnt::column_t::operator!=
Return true if this column doesn't refer to the same column as other.
bool xlnt::column_t::operator>
Return true if other is to the right of this column.
bool xlnt::column_t::operator>=
Return true if other is to the right of or equal to this column.
bool xlnt::column_t::operator<
Return true if other is to the left of this column.
bool xlnt::column_t::operator<=
Return true if other is to the left of or equal to this column.
bool xlnt::column_t::operator>
Return true if other is to the right of this column.
bool xlnt::column_t::operator>=
Return true if other is to the right of or equal to this column.
bool xlnt::column_t::operator<
Return true if other is to the left of this column.
bool xlnt::column_t::operator<=
Return true if other is to the left of or equal to this column.
column_t& xlnt::column_t::operator++
Pre-increment this column, making it point to the column one to the right.
column_t& xlnt::column_t::operator--
Pre-deccrement this column, making it point to the column one to the left.
column_t xlnt::column_t::operator++
Post-increment this column, making it point to the column one to the right and returning the old column.
column_t xlnt::column_t::operator--
Post-decrement this column, making it point to the column one to the left and returning the old column.
column_t& xlnt::column_t::operator+=
Add rhs to this column and return a reference to this column.
column_t& xlnt::column_t::operator-=
Subtrac rhs from this column and return a reference to this column.
column_t& xlnt::column_t::operator*=
Multiply this column by rhs and return a reference to this column.
column_t& xlnt::column_t::operator/=
Divide this column by rhs and return a reference to this column.
column_t& xlnt::column_t::operator%=
Mod this column by rhs and return a reference to this column.
column_t operator+
Return the result of adding rhs to this column.
column_t operator-
Return the result of subtracing lhs by rhs column.
column_t operator*
Return the result of multiply lhs by rhs column.
column_t operator/
Return the result of divide lhs by rhs column.
column_t operator%
Return the result of mod lhs by rhs column.
bool operator>
Return true if other is to the right of this column.
bool operator>=
Return true if other is to the right of or equal to this column.
bool operator<
Return true if other is to the left of this column.
bool operator<=
Return true if other is to the left of or equal to this column.
void swap
Swap the columns that left and right refer to.
column_hash
std::size_t xlnt::column_hash::operator()
column_t >
size_t std::hash< xlnt::column_t >::operator()
rich_text
xlnt::rich_text::rich_text
xlnt::rich_text::rich_text
xlnt::rich_text::rich_text
xlnt::rich_text::rich_text
void xlnt::rich_text::clear
Remove all text runs from this text.
void xlnt::rich_text::plain_text
Clear any runs in this text and add a single run with default formatting and the given string as its textual content.
std::string xlnt::rich_text::plain_text
Combine the textual content of each text run in order and return the result.
std::vector<rich_text_run> xlnt::rich_text::runs
Returns a copy of the individual runs that comprise this text.
void xlnt::rich_text::runs
Set the runs of this text all at once.
void xlnt::rich_text::add_run
Add a new run to the end of the set of runs.
bool xlnt::rich_text::operator==
Returns true if the runs that make up this text are identical to those in rhs.
bool xlnt::rich_text::operator==
Returns true if this text has a single unformatted run with text equal to rhs.
Packaging Module
manifest
void xlnt::manifest::clear
Unregisters all default and override type and all relationships and known parts.
std::vector<path> xlnt::manifest::parts
Returns the path to all internal package parts registered as a source or target of a relationship.
bool xlnt::manifest::has_relationship
Returns true if the manifest contains a relationship with the given type with part as the source.
bool xlnt::manifest::has_relationship
Returns true if the manifest contains a relationship with the given type with part as the source.
class relationship xlnt::manifest::relationship
Returns the relationship with "source" as the source and with a type of "type". Throws a key_not_found exception if no such relationship is found.
class relationship xlnt::manifest::relationship
Returns the relationship with "source" as the source and with an ID of "rel_id". Throws a key_not_found exception if no such relationship is found.
std::vector<xlnt::relationship> xlnt::manifest::relationships
Returns all relationship with "source" as the source.
std::vector<xlnt::relationship> xlnt::manifest::relationships
Returns all relationships with "source" as the source and with a type of "type".
path xlnt::manifest::canonicalize
Returns the canonical path of the chain of relationships by traversing through rels and forming the absolute combined path.
std::string xlnt::manifest::register_relationship
std::string xlnt::manifest::register_relationship
std::unordered_map<std::string, std::string> xlnt::manifest::unregister_relationship
Delete the relationship with the given id from source part. Returns a mapping of relationship IDs since IDs are shifted down. For example, if there are three relationships for part a.xml like [rId1, rId2, rId3] and rId2 is deleted, the resulting map would look like [rId3->rId2].
std::string xlnt::manifest::content_type
Given the path to a part, returns the content type of the part as a string.
bool xlnt::manifest::has_default_type
Returns true if a default content type for the extension has been registered.
std::vector<std::string> xlnt::manifest::extensions_with_default_types
Returns a vector of all extensions with registered default content types.
std::string xlnt::manifest::default_type
Returns the registered default content type for parts of the given extension.
void xlnt::manifest::register_default_type
Associates the given extension with the given content type.
void xlnt::manifest::unregister_default_type
Unregisters the default content type for the given extension.
bool xlnt::manifest::has_override_type
Returns true if a content type overriding the default content type has been registered for the given part.
std::string xlnt::manifest::override_type
Returns the override content type registered for the given part. Throws key_not_found exception if no override type was found.
std::vector<path> xlnt::manifest::parts_with_overriden_types
Returns the path of every part in this manifest with an overriden content type.
void xlnt::manifest::register_override_type
Overrides any default type registered for the part's extension with the given content type.
void xlnt::manifest::unregister_override_type
Unregisters the overriding content type of the given part.
relationship
xlnt::relationship::relationship
xlnt::relationship::relationship
std::string xlnt::relationship::id
Returns a string of the form rId# that identifies the relationship.
relationship_type xlnt::relationship::type
Returns the type of this relationship.
xlnt::target_mode xlnt::relationship::target_mode
Returns whether the target of the relationship is internal or external to the package.
uri xlnt::relationship::source
Returns the URI of the package part this relationship points to.
uri xlnt::relationship::target
Returns the URI of the package part this relationship points to.
bool xlnt::relationship::operator==
Returns true if and only if rhs is equal to this relationship.
bool xlnt::relationship::operator!=
Returns true if and only if rhs is not equal to this relationship.
uri
xlnt::uri::uri
xlnt::uri::uri
xlnt::uri::uri
xlnt::uri::uri
bool xlnt::uri::is_relative
bool xlnt::uri::is_absolute
std::string xlnt::uri::scheme
std::string xlnt::uri::authority
bool xlnt::uri::has_authentication
std::string xlnt::uri::authentication
std::string xlnt::uri::username
std::string xlnt::uri::password
std::string xlnt::uri::host
bool xlnt::uri::has_port
std::size_t xlnt::uri::port
class path xlnt::uri::path
bool xlnt::uri::has_query
std::string xlnt::uri::query
bool xlnt::uri::has_fragment
std::string xlnt::uri::fragment
std::string xlnt::uri::to_string
uri xlnt::uri::make_absolute
uri xlnt::uri::make_reference
bool operator==
Styles Module
alignment
bool xlnt::alignment::shrink
alignment& xlnt::alignment::shrink
bool xlnt::alignment::wrap
alignment& xlnt::alignment::wrap
optional<int> xlnt::alignment::indent
alignment& xlnt::alignment::indent
optional<int> xlnt::alignment::rotation
alignment& xlnt::alignment::rotation
optional<horizontal_alignment> xlnt::alignment::horizontal
alignment& xlnt::alignment::horizontal
optional<vertical_alignment> xlnt::alignment::vertical
alignment& xlnt::alignment::vertical
bool operator==
Returns true if left is exactly equal to right.
bool operator!=
Returns true if left is not exactly equal to right.
border
static const std::vector<border_side>& xlnt::border::all_sides
xlnt::border::border
optional<border_property> xlnt::border::side
border& xlnt::border::side
optional<diagonal_direction> xlnt::border::diagonal
border& xlnt::border::diagonal
bool operator==
Returns true if left is exactly equal to right.
bool operator!=
Returns true if left is not exactly equal to right.
border_property
optional<class color> xlnt::border::border_property::color
border_property& xlnt::border::border_property::color
optional<border_style> xlnt::border::border_property::style
border_property& xlnt::border::border_property::style
bool operator==
Returns true if left is exactly equal to right.
bool operator!=
Returns true if left is not exactly equal to right.
indexed_color
xlnt::indexed_color::indexed_color
std::size_t xlnt::indexed_color::index
void xlnt::indexed_color::index
theme_color
xlnt::theme_color::theme_color
std::size_t xlnt::theme_color::index
void xlnt::theme_color::index
rgb_color
xlnt::rgb_color::rgb_color
xlnt::rgb_color::rgb_color
std::string xlnt::rgb_color::hex_string
std::uint8_t xlnt::rgb_color::red
std::uint8_t xlnt::rgb_color::green
std::uint8_t xlnt::rgb_color::blue
std::uint8_t xlnt::rgb_color::alpha
std::array<std::uint8_t, 3> xlnt::rgb_color::rgb
std::array<std::uint8_t, 4> xlnt::rgb_color::rgba
color
static const color xlnt::color::black
static const color xlnt::color::white
static const color xlnt::color::red
static const color xlnt::color::darkred
static const color xlnt::color::blue
static const color xlnt::color::darkblue
static const color xlnt::color::green
static const color xlnt::color::darkgreen
static const color xlnt::color::yellow
static const color xlnt::color::darkyellow
xlnt::color::color
xlnt::color::color
xlnt::color::color
xlnt::color::color
color_type xlnt::color::type
bool xlnt::color::is_auto
void xlnt::color::auto_
const rgb_color& xlnt::color::rgb
const indexed_color& xlnt::color::indexed
const theme_color& xlnt::color::theme
double xlnt::color::tint
void xlnt::color::tint
bool xlnt::color::operator==
bool xlnt::color::operator!=
pattern_fill
xlnt::pattern_fill::pattern_fill
pattern_fill_type xlnt::pattern_fill::type
pattern_fill& xlnt::pattern_fill::type
optional<color> xlnt::pattern_fill::foreground
pattern_fill& xlnt::pattern_fill::foreground
optional<color> xlnt::pattern_fill::background
pattern_fill& xlnt::pattern_fill::background
bool operator==
Returns true if left is exactly equal to right.
bool operator!=
Returns true if left is not exactly equal to right.
gradient_fill
xlnt::gradient_fill::gradient_fill
gradient_fill_type xlnt::gradient_fill::type
gradient_fill& xlnt::gradient_fill::type
gradient_fill& xlnt::gradient_fill::degree
double xlnt::gradient_fill::degree
double xlnt::gradient_fill::left
gradient_fill& xlnt::gradient_fill::left
double xlnt::gradient_fill::right
gradient_fill& xlnt::gradient_fill::right
double xlnt::gradient_fill::top
gradient_fill& xlnt::gradient_fill::top
double xlnt::gradient_fill::bottom
gradient_fill& xlnt::gradient_fill::bottom
gradient_fill& xlnt::gradient_fill::add_stop
gradient_fill& xlnt::gradient_fill::clear_stops
std::unordered_map<double, color> xlnt::gradient_fill::stops
bool operator==
Returns true if left is exactly equal to right.
bool operator!=
Returns true if left is not exactly equal to right.
fill
static fill xlnt::fill::solid
Helper method for the most common use case, setting the fill color of a cell to a single solid color. The foreground and background colors of a fill are not the same as the foreground and background colors of a cell. When setting a fill color in Excel, a new fill is created with the given color as the fill's fgColor and index color number 64 as the bgColor. This method creates a fill in the same way.
xlnt::fill::fill
Constructs a fill initialized as a none-type pattern fill with no foreground or background colors.
xlnt::fill::fill
Constructs a fill initialized as a pattern fill based on the given pattern.
xlnt::fill::fill
Constructs a fill initialized as a gradient fill based on the given gradient.
fill_type xlnt::fill::type
Returns the fill_type of this fill depending on how it was constructed.
class gradient_fill xlnt::fill::gradient_fill
Returns the gradient fill represented by this fill. Throws an invalid_attribute exception if this is not a gradient fill.
class pattern_fill xlnt::fill::pattern_fill
Returns the pattern fill represented by this fill. Throws an invalid_attribute exception if this is not a pattern fill.
bool operator==
Returns true if left is exactly equal to right.
bool operator!=
Returns true if left is not exactly equal to right.
font
undefined
bool operator==
Returns true if left is exactly equal to right.
bool operator!=
Returns true if left is not exactly equal to right.
xlnt::font::font
font& xlnt::font::bold
bool xlnt::font::bold
font& xlnt::font::superscript
bool xlnt::font::superscript
font& xlnt::font::italic
bool xlnt::font::italic
font& xlnt::font::strikethrough
bool xlnt::font::strikethrough
font& xlnt::font::underline
bool xlnt::font::underlined
underline_style xlnt::font::underline
bool xlnt::font::has_size
font& xlnt::font::size
double xlnt::font::size
bool xlnt::font::has_name
font& xlnt::font::name
std::string xlnt::font::name
bool xlnt::font::has_color
font& xlnt::font::color
xlnt::color xlnt::font::color
bool xlnt::font::has_family
font& xlnt::font::family
std::size_t xlnt::font::family
bool xlnt::font::has_scheme
font& xlnt::font::scheme
std::string xlnt::font::scheme
format
friend struct detail::stylesheet
std::size_t xlnt::format::id
class alignment& xlnt::format::alignment
const class alignment& xlnt::format::alignment
format xlnt::format::alignment
bool xlnt::format::alignment_applied
class border& xlnt::format::border
const class border& xlnt::format::border
format xlnt::format::border
bool xlnt::format::border_applied
class fill& xlnt::format::fill
const class fill& xlnt::format::fill
format xlnt::format::fill
bool xlnt::format::fill_applied
class font& xlnt::format::font
const class font& xlnt::format::font
format xlnt::format::font
bool xlnt::format::font_applied
class number_format& xlnt::format::number_format
const class number_format& xlnt::format::number_format
format xlnt::format::number_format
bool xlnt::format::number_format_applied
class protection& xlnt::format::protection
const class protection& xlnt::format::protection
format xlnt::format::protection
bool xlnt::format::protection_applied
bool xlnt::format::has_style
void xlnt::format::clear_style
format xlnt::format::style
format xlnt::format::style
const class style xlnt::format::style
number_format
static const number_format xlnt::number_format::general
static const number_format xlnt::number_format::text
static const number_format xlnt::number_format::number
static const number_format xlnt::number_format::number_00
static const number_format xlnt::number_format::number_comma_separated1
static const number_format xlnt::number_format::percentage
static const number_format xlnt::number_format::percentage_00
static const number_format xlnt::number_format::date_yyyymmdd2
static const number_format xlnt::number_format::date_yymmdd
static const number_format xlnt::number_format::date_ddmmyyyy
static const number_format xlnt::number_format::date_dmyslash
static const number_format xlnt::number_format::date_dmyminus
static const number_format xlnt::number_format::date_dmminus
static const number_format xlnt::number_format::date_myminus
static const number_format xlnt::number_format::date_xlsx14
static const number_format xlnt::number_format::date_xlsx15
static const number_format xlnt::number_format::date_xlsx16
static const number_format xlnt::number_format::date_xlsx17
static const number_format xlnt::number_format::date_xlsx22
static const number_format xlnt::number_format::date_datetime
static const number_format xlnt::number_format::date_time1
static const number_format xlnt::number_format::date_time2
static const number_format xlnt::number_format::date_time3
static const number_format xlnt::number_format::date_time4
static const number_format xlnt::number_format::date_time5
static const number_format xlnt::number_format::date_time6
static bool xlnt::number_format::is_builtin_format
static const number_format& xlnt::number_format::from_builtin_id
xlnt::number_format::number_format
xlnt::number_format::number_format
xlnt::number_format::number_format
xlnt::number_format::number_format
void xlnt::number_format::format_string
void xlnt::number_format::format_string
std::string xlnt::number_format::format_string
bool xlnt::number_format::has_id
void xlnt::number_format::id
std::size_t xlnt::number_format::id
std::string xlnt::number_format::format
std::string xlnt::number_format::format
bool xlnt::number_format::is_date_format
bool operator==
Returns true if left is exactly equal to right.
bool operator!=
Returns true if left is not exactly equal to right.
protection
static protection xlnt::protection::unlocked_and_visible
static protection xlnt::protection::locked_and_visible
static protection xlnt::protection::unlocked_and_hidden
static protection xlnt::protection::locked_and_hidden
xlnt::protection::protection
bool xlnt::protection::locked
protection& xlnt::protection::locked
bool xlnt::protection::hidden
protection& xlnt::protection::hidden
bool operator==
Returns true if left is exactly equal to right.
bool operator!=
Returns true if left is not exactly equal to right.
style
friend struct detail::stylesheet
friend class detail::xlsx_consumer
xlnt::style::style
Delete zero-argument constructor
xlnt::style::style
Default copy constructor
std::string xlnt::style::name
Return the name of this style.
style xlnt::style::name
bool xlnt::style::hidden
style xlnt::style::hidden
optional<bool> xlnt::style::custom
style xlnt::style::custom
optional<std::size_t> xlnt::style::builtin_id
style xlnt::style::builtin_id
class alignment& xlnt::style::alignment
const class alignment& xlnt::style::alignment
style xlnt::style::alignment
bool xlnt::style::alignment_applied
class border& xlnt::style::border
const class border& xlnt::style::border
style xlnt::style::border
bool xlnt::style::border_applied
class fill& xlnt::style::fill
const class fill& xlnt::style::fill
style xlnt::style::fill
bool xlnt::style::fill_applied
class font& xlnt::style::font
const class font& xlnt::style::font
style xlnt::style::font
bool xlnt::style::font_applied
class number_format& xlnt::style::number_format
const class number_format& xlnt::style::number_format
style xlnt::style::number_format
bool xlnt::style::number_format_applied
class protection& xlnt::style::protection
const class protection& xlnt::style::protection
style xlnt::style::protection
bool xlnt::style::protection_applied
bool xlnt::style::operator==
Utils Module
date
int xlnt::date::year
int xlnt::date::month
int xlnt::date::day
static date xlnt::date::today
Return the current date according to the system time.
static date xlnt::date::from_number
Return a date by adding days_since_base_year to base_date. This includes leap years.
xlnt::date::date
int xlnt::date::to_number
Return the number of days between this date and base_date.
int xlnt::date::weekday
bool xlnt::date::operator==
Return true if this date is equal to comparand.
datetime
int xlnt::datetime::year
int xlnt::datetime::month
int xlnt::datetime::day
int xlnt::datetime::hour
int xlnt::datetime::minute
int xlnt::datetime::second
int xlnt::datetime::microsecond
static datetime xlnt::datetime::now
Return the current date and time according to the system time.
static datetime xlnt::datetime::today
Return the current date and time according to the system time. This is equivalent to datetime::now().
static datetime xlnt::datetime::from_number
Return a datetime from number by converting the integer part into a date and the fractional part into a time according to date::from_number and time::from_number.
static datetime xlnt::datetime::from_iso_string
xlnt::datetime::datetime
xlnt::datetime::datetime
std::string xlnt::datetime::to_string
std::string xlnt::datetime::to_iso_string
long double xlnt::datetime::to_number
bool xlnt::datetime::operator==
int xlnt::datetime::weekday
exception
xlnt::exception::exception
xlnt::exception::exception
virtual xlnt::exception::~exception
void xlnt::exception::message
invalid_parameter
xlnt::invalid_parameter::invalid_parameter
xlnt::invalid_parameter::invalid_parameter
virtual xlnt::invalid_parameter::~invalid_parameter
invalid_sheet_title
xlnt::invalid_sheet_title::invalid_sheet_title
xlnt::invalid_sheet_title::invalid_sheet_title
virtual xlnt::invalid_sheet_title::~invalid_sheet_title
missing_number_format
xlnt::missing_number_format::missing_number_format
virtual xlnt::missing_number_format::~missing_number_format
invalid_file
xlnt::invalid_file::invalid_file
xlnt::invalid_file::invalid_file
virtual xlnt::invalid_file::~invalid_file
illegal_character
xlnt::illegal_character::illegal_character
xlnt::illegal_character::illegal_character
virtual xlnt::illegal_character::~illegal_character
invalid_data_type
xlnt::invalid_data_type::invalid_data_type
xlnt::invalid_data_type::invalid_data_type
virtual xlnt::invalid_data_type::~invalid_data_type
invalid_column_string_index
xlnt::invalid_column_string_index::invalid_column_string_index
xlnt::invalid_column_string_index::invalid_column_string_index
virtual xlnt::invalid_column_string_index::~invalid_column_string_index
invalid_cell_reference
xlnt::invalid_cell_reference::invalid_cell_reference
xlnt::invalid_cell_reference::invalid_cell_reference
xlnt::invalid_cell_reference::invalid_cell_reference
virtual xlnt::invalid_cell_reference::~invalid_cell_reference
invalid_attribute
xlnt::invalid_attribute::invalid_attribute
xlnt::invalid_attribute::invalid_attribute
virtual xlnt::invalid_attribute::~invalid_attribute
key_not_found
xlnt::key_not_found::key_not_found
xlnt::key_not_found::key_not_found
virtual xlnt::key_not_found::~key_not_found
no_visible_worksheets
xlnt::no_visible_worksheets::no_visible_worksheets
xlnt::no_visible_worksheets::no_visible_worksheets
virtual xlnt::no_visible_worksheets::~no_visible_worksheets
unhandled_switch_case
xlnt::unhandled_switch_case::unhandled_switch_case
virtual xlnt::unhandled_switch_case::~unhandled_switch_case
unsupported
xlnt::unsupported::unsupported
xlnt::unsupported::unsupported
virtual xlnt::unsupported::~unsupported
optional
xlnt::optional< T >::optional
xlnt::optional< T >::optional
xlnt::optional< T >::operator bool
bool xlnt::optional< T >::is_set
void xlnt::optional< T >::set
T& xlnt::optional< T >::get
const T& xlnt::optional< T >::get
void xlnt::optional< T >::clear
optional& xlnt::optional< T >::operator=
bool xlnt::optional< T >::operator==
path
static char xlnt::path::system_separator
The system-specific path separator character (e.g. '/' or '').
xlnt::path::path
Construct an empty path.
xlnt::path::path
Counstruct a path from a string representing the path.
xlnt::path::path
Construct a path from a string with an explicit directory seprator.
bool xlnt::path::is_relative
Return true iff this path doesn't begin with / (or a drive letter on Windows).
bool xlnt::path::is_absolute
Return true iff path::is_relative() is false.
bool xlnt::path::is_root
Return true iff this path is the root directory.
path xlnt::path::parent
Return a new path that points to the directory containing the current path Return the path unchanged if this path is the absolute or relative root.
std::string xlnt::path::filename
Return the last component of this path.
std::string xlnt::path::extension
Return the part of the path following the last dot in the filename.
std::pair<std::string, std::string> xlnt::path::split_extension
Return a pair of strings resulting from splitting the filename on the last dot.
std::vector<std::string> xlnt::path::split
Create a string representing this path separated by the provided separator or the system-default separator if not provided.
std::string xlnt::path::string
Create a string representing this path separated by the provided separator or the system-default separator if not provided.
path xlnt::path::resolve
If this path is relative, append each component of this path to base_path and return the resulting absolute path. Otherwise, the the current path will be returned and base_path will be ignored.
path xlnt::path::relative_to
The inverse of path::resolve. Creates a relative path from an absolute path by removing the common root between base_path and this path. If the current path is already relative, return it unchanged.
bool xlnt::path::exists
Return true iff the file or directory pointed to by this path exists on the filesystem.
bool xlnt::path::is_directory
Return true if the file or directory pointed to by this path is a directory.
bool xlnt::path::is_file
Return true if the file or directory pointed to by this path is a regular file.
std::string xlnt::path::read_contents
Open the file pointed to by this path and return a string containing the files contents.
path xlnt::path::append
Append the provided part to this path and return the result.
path xlnt::path::append
Append the provided part to this path and return the result.
bool operator==
Returns true if left path is equal to right path.
path >
size_t std::hash< xlnt::path >::operator()
scoped_enum_hash
std::size_t xlnt::scoped_enum_hash< Enum >::operator()
time
int xlnt::time::hour
int xlnt::time::minute
int xlnt::time::second
int xlnt::time::microsecond
static time xlnt::time::now
Return the current time according to the system time.
static time xlnt::time::from_number
Return a time from a number representing a fraction of a day. The integer part of number will be ignored. 0.5 would return time(12, 0, 0, 0) or noon, halfway through the day.
xlnt::time::time
xlnt::time::time
long double xlnt::time::to_number
bool xlnt::time::operator==
timedelta
int xlnt::timedelta::days
int xlnt::timedelta::hours
int xlnt::timedelta::minutes
int xlnt::timedelta::seconds
int xlnt::timedelta::microseconds
static timedelta xlnt::timedelta::from_number
xlnt::timedelta::timedelta
xlnt::timedelta::timedelta
long double xlnt::timedelta::to_number
utf8string
static utf8string xlnt::utf8string::from_utf8
static utf8string xlnt::utf8string::from_latin1
static utf8string xlnt::utf8string::from_utf16
static utf8string xlnt::utf8string::from_utf32
bool xlnt::utf8string::is_valid
variant
undefined
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
xlnt::variant::variant
bool xlnt::variant::is
T xlnt::variant::get
type xlnt::variant::value_type
Workbook Module
calculation_properties
std::size_t xlnt::calculation_properties::calc_id
bool xlnt::calculation_properties::concurrent_calc
const_worksheet_iterator
xlnt::const_worksheet_iterator::const_worksheet_iterator
xlnt::const_worksheet_iterator::const_worksheet_iterator
const_worksheet_iterator& xlnt::const_worksheet_iterator::operator=
const worksheet xlnt::const_worksheet_iterator::operator*
bool xlnt::const_worksheet_iterator::operator==
bool xlnt::const_worksheet_iterator::operator!=
const_worksheet_iterator xlnt::const_worksheet_iterator::operator++
const_worksheet_iterator& xlnt::const_worksheet_iterator::operator++
document_security
bool xlnt::document_security::lock_revision
bool xlnt::document_security::lock_structure
bool xlnt::document_security::lock_windows
std::string xlnt::document_security::revision_password
std::string xlnt::document_security::workbook_password
xlnt::document_security::document_security
external_book
named_range
using xlnt::named_range::target = std::pair<worksheet, range_reference>
xlnt::named_range::named_range
xlnt::named_range::named_range
xlnt::named_range::named_range
std::string xlnt::named_range::name
const std::vector<target>& xlnt::named_range::targets
named_range& xlnt::named_range::operator=
theme
workbook
using xlnt::workbook::iterator = worksheet_iterator
using xlnt::workbook::const_iterator = const_worksheet_iterator
using xlnt::workbook::reverse_iterator = std::reverse_iterator<iterator>
using xlnt::workbook::const_reverse_iterator = std::reverse_iterator<const_iterator>
friend class detail::xlsx_consumer
friend class detail::xlsx_producer
void swap
Swap the data held in workbooks "left" and "right".
static workbook xlnt::workbook::empty
xlnt::workbook::workbook
Create a workbook containing a single empty worksheet.
xlnt::workbook::workbook
Move construct this workbook from existing workbook "other".
xlnt::workbook::workbook
Copy construct this workbook from existing workbook "other".
xlnt::workbook::~workbook
Destroy this workbook.
worksheet xlnt::workbook::create_sheet
Create a sheet after the last sheet in this workbook and return it.
worksheet xlnt::workbook::create_sheet
Create a sheet at the specified index and return it.
worksheet xlnt::workbook::create_sheet_with_rel
This should be private...
void xlnt::workbook::copy_sheet
Create a new sheet initializing it with all of the data from the provided worksheet.
void xlnt::workbook::copy_sheet
Create a new sheet at the specified index initializing it with all of the data from the provided worksheet.
worksheet xlnt::workbook::active_sheet
Returns the worksheet that was most recently accessed. This is also the sheet that will be shown when the workbook is opened in the spreadsheet editor program.
worksheet xlnt::workbook::sheet_by_title
Return the worksheet with the given name. This may throw an exception if the sheet isn't found. Use workbook::contains(const std::string &) to make sure the sheet exists.
const worksheet xlnt::workbook::sheet_by_title
Return the const worksheet with the given name. This may throw an exception if the sheet isn't found. Use workbook::contains(const std::string &) to make sure the sheet exists.
worksheet xlnt::workbook::sheet_by_index
Return the worksheet at the given index.
const worksheet xlnt::workbook::sheet_by_index
Return the const worksheet at the given index.
worksheet xlnt::workbook::sheet_by_id
Return the worksheet with a sheetId of id.
const worksheet xlnt::workbook::sheet_by_id
Return the const worksheet with a sheetId of id.
bool xlnt::workbook::contains
Return true if this workbook contains a sheet with the given name.
std::size_t xlnt::workbook::index
Return the index of the given worksheet. The worksheet must be owned by this workbook.
void xlnt::workbook::remove_sheet
Remove the given worksheet from this workbook.
void xlnt::workbook::clear
Delete every cell in this worksheet. After this is called, the worksheet will be equivalent to a newly created sheet at the same index and with the same title.
iterator xlnt::workbook::begin
Returns an iterator to the first worksheet in this workbook.
iterator xlnt::workbook::end
Returns an iterator to the worksheet following the last worksheet of the workbook. This worksheet acts as a placeholder; attempting to access it will cause an exception to be thrown.
const_iterator xlnt::workbook::begin
Returns a const iterator to the first worksheet in this workbook.
const_iterator xlnt::workbook::end
Returns a const iterator to the worksheet following the last worksheet of the workbook. This worksheet acts as a placeholder; attempting to access it will cause an exception to be thrown.
const_iterator xlnt::workbook::cbegin
Returns an iterator to the first worksheet in this workbook.
const_iterator xlnt::workbook::cend
Returns a const iterator to the worksheet following the last worksheet of the workbook. This worksheet acts as a placeholder; attempting to access it will cause an exception to be thrown.
void xlnt::workbook::apply_to_cells
Apply the function "f" to every non-empty cell in every worksheet in this workbook.
std::vector<std::string> xlnt::workbook::sheet_titles
Returns a temporary vector containing the titles of each sheet in the order of the sheets in the workbook.
std::size_t xlnt::workbook::sheet_count
Returns the number of sheets in this workbook.
bool xlnt::workbook::has_core_property
Returns true if the workbook has the core property with the given name.
std::vector<xlnt::core_property> xlnt::workbook::core_properties
variant xlnt::workbook::core_property
void xlnt::workbook::core_property
bool xlnt::workbook::has_extended_property
Returns true if the workbook has the extended property with the given name.
std::vector<xlnt::extended_property> xlnt::workbook::extended_properties
variant xlnt::workbook::extended_property
void xlnt::workbook::extended_property
bool xlnt::workbook::has_custom_property
Returns true if the workbook has the custom property with the given name.
std::vector<std::string> xlnt::workbook::custom_properties
variant xlnt::workbook::custom_property
void xlnt::workbook::custom_property
calendar xlnt::workbook::base_date
void xlnt::workbook::base_date
bool xlnt::workbook::has_title
std::string xlnt::workbook::title
void xlnt::workbook::title
std::vector<xlnt::named_range> xlnt::workbook::named_ranges
void xlnt::workbook::create_named_range
void xlnt::workbook::create_named_range
bool xlnt::workbook::has_named_range
class range xlnt::workbook::named_range
void xlnt::workbook::remove_named_range
void xlnt::workbook::save
void xlnt::workbook::save
void xlnt::workbook::save
void xlnt::workbook::save
void xlnt::workbook::save
void xlnt::workbook::save
void xlnt::workbook::save
void xlnt::workbook::save
void xlnt::workbook::load
void xlnt::workbook::load
void xlnt::workbook::load
void xlnt::workbook::load
void xlnt::workbook::load
void xlnt::workbook::load
void xlnt::workbook::load
void xlnt::workbook::load
bool xlnt::workbook::has_view
workbook_view xlnt::workbook::view
void xlnt::workbook::view
bool xlnt::workbook::has_code_name
std::string xlnt::workbook::code_name
void xlnt::workbook::code_name
bool xlnt::workbook::has_file_version
std::string xlnt::workbook::app_name
std::size_t xlnt::workbook::last_edited
std::size_t xlnt::workbook::lowest_edited
std::size_t xlnt::workbook::rup_build
bool xlnt::workbook::has_theme
const xlnt::theme& xlnt::workbook::theme
void xlnt::workbook::theme
xlnt::format xlnt::workbook::format
const xlnt::format xlnt::workbook::format
xlnt::format xlnt::workbook::create_format
void xlnt::workbook::clear_formats
bool xlnt::workbook::has_style
class style xlnt::workbook::style
const class style xlnt::workbook::style
class style xlnt::workbook::create_style
void xlnt::workbook::clear_styles
class manifest& xlnt::workbook::manifest
const class manifest& xlnt::workbook::manifest
void xlnt::workbook::add_shared_string
std::vector<rich_text>& xlnt::workbook::shared_strings
const std::vector<rich_text>& xlnt::workbook::shared_strings
void xlnt::workbook::thumbnail
const std::vector<std::uint8_t>& xlnt::workbook::thumbnail
bool xlnt::workbook::has_calculation_properties
class calculation_properties xlnt::workbook::calculation_properties
void xlnt::workbook::calculation_properties
workbook& xlnt::workbook::operator=
Set the contents of this workbook to be equal to those of "other". Other is passed as value to allow for copy-swap idiom.
worksheet xlnt::workbook::operator[]
Return the worksheet with a title of "name".
worksheet xlnt::workbook::operator[]
Return the worksheet at "index".
bool xlnt::workbook::operator==
Return true if this workbook internal implementation points to the same memory as rhs's.
bool xlnt::workbook::operator!=
Return true if this workbook internal implementation doesn't point to the same memory as rhs's.
workbook_view
bool xlnt::workbook_view::auto_filter_date_grouping
bool xlnt::workbook_view::minimized
bool xlnt::workbook_view::show_horizontal_scroll
bool xlnt::workbook_view::show_sheet_tabs
bool xlnt::workbook_view::show_vertical_scroll
bool xlnt::workbook_view::visible
optional<std::size_t> xlnt::workbook_view::active_tab
optional<std::size_t> xlnt::workbook_view::first_sheet
optional<std::size_t> xlnt::workbook_view::tab_ratio
optional<std::size_t> xlnt::workbook_view::window_width
optional<std::size_t> xlnt::workbook_view::window_height
optional<std::size_t> xlnt::workbook_view::x_window
optional<std::size_t> xlnt::workbook_view::y_window
worksheet_iterator
xlnt::worksheet_iterator::worksheet_iterator
xlnt::worksheet_iterator::worksheet_iterator
worksheet_iterator& xlnt::worksheet_iterator::operator=
worksheet xlnt::worksheet_iterator::operator*
bool xlnt::worksheet_iterator::operator==
bool xlnt::worksheet_iterator::operator!=
worksheet_iterator xlnt::worksheet_iterator::operator++
worksheet_iterator& xlnt::worksheet_iterator::operator++
Worksheet Module
cell_iterator
xlnt::cell_iterator::cell_iterator
xlnt::cell_iterator::cell_iterator
xlnt::cell_iterator::cell_iterator
cell xlnt::cell_iterator::operator*
cell_iterator& xlnt::cell_iterator::operator=
bool xlnt::cell_iterator::operator==
bool xlnt::cell_iterator::operator!=
cell_iterator& xlnt::cell_iterator::operator--
cell_iterator xlnt::cell_iterator::operator--
cell_iterator& xlnt::cell_iterator::operator++
cell_iterator xlnt::cell_iterator::operator++
cell_vector
using xlnt::cell_vector::iterator = cell_iterator
using xlnt::cell_vector::const_iterator = const_cell_iterator
using xlnt::cell_vector::reverse_iterator = std::reverse_iterator<iterator>
using xlnt::cell_vector::const_reverse_iterator = std::reverse_iterator<const_iterator>
xlnt::cell_vector::cell_vector
cell xlnt::cell_vector::front
const cell xlnt::cell_vector::front
cell xlnt::cell_vector::back
const cell xlnt::cell_vector::back
cell xlnt::cell_vector::operator[]
const cell xlnt::cell_vector::operator[]
std::size_t xlnt::cell_vector::length
iterator xlnt::cell_vector::begin
iterator xlnt::cell_vector::end
const_iterator xlnt::cell_vector::begin
const_iterator xlnt::cell_vector::cbegin
const_iterator xlnt::cell_vector::end
const_iterator xlnt::cell_vector::cend
reverse_iterator xlnt::cell_vector::rbegin
reverse_iterator xlnt::cell_vector::rend
const_reverse_iterator xlnt::cell_vector::rbegin
const_reverse_iterator xlnt::cell_vector::rend
const_reverse_iterator xlnt::cell_vector::crbegin
const_reverse_iterator xlnt::cell_vector::crend
column_properties
optional<double> xlnt::column_properties::width
bool xlnt::column_properties::custom_width
optional<std::size_t> xlnt::column_properties::style
bool xlnt::column_properties::hidden
const_cell_iterator
xlnt::const_cell_iterator::const_cell_iterator
xlnt::const_cell_iterator::const_cell_iterator
xlnt::const_cell_iterator::const_cell_iterator
const_cell_iterator& xlnt::const_cell_iterator::operator=
const cell xlnt::const_cell_iterator::operator*
bool xlnt::const_cell_iterator::operator==
bool xlnt::const_cell_iterator::operator!=
const_cell_iterator& xlnt::const_cell_iterator::operator--
const_cell_iterator xlnt::const_cell_iterator::operator--
const_cell_iterator& xlnt::const_cell_iterator::operator++
const_cell_iterator xlnt::const_cell_iterator::operator++
const_range_iterator
xlnt::const_range_iterator::const_range_iterator
xlnt::const_range_iterator::const_range_iterator
const cell_vector xlnt::const_range_iterator::operator*
const_range_iterator& xlnt::const_range_iterator::operator=
bool xlnt::const_range_iterator::operator==
bool xlnt::const_range_iterator::operator!=
const_range_iterator& xlnt::const_range_iterator::operator--
const_range_iterator xlnt::const_range_iterator::operator--
const_range_iterator& xlnt::const_range_iterator::operator++
const_range_iterator xlnt::const_range_iterator::operator++
header_footer
undefined
bool xlnt::header_footer::has_header
True if any text has been added for a header at any location on any page.
bool xlnt::header_footer::has_footer
True if any text has been added for a footer at any location on any page.
bool xlnt::header_footer::align_with_margins
True if headers and footers should align to the page margins.
header_footer& xlnt::header_footer::align_with_margins
Set to true if headers and footers should align to the page margins. Set to false if headers and footers should align to the edge of the page.
bool xlnt::header_footer::different_odd_even
True if headers and footers differ based on page number.
bool xlnt::header_footer::different_first
True if headers and footers are different on the first page.
bool xlnt::header_footer::scale_with_doc
True if headers and footers should scale to match the worksheet.
header_footer& xlnt::header_footer::scale_with_doc
Set to true if headers and footers should scale to match the worksheet.
bool xlnt::header_footer::has_header
True if any text has been added at the given location on any page.
void xlnt::header_footer::clear_header
Remove all headers from all pages.
void xlnt::header_footer::clear_header
Remove header at the given location on any page.
header_footer& xlnt::header_footer::header
Add a header at the given location with the given text.
header_footer& xlnt::header_footer::header
Add a header at the given location with the given text.
rich_text xlnt::header_footer::header
Get the text of the header at the given location. If headers are different on odd and even pages, the odd header will be returned.
bool xlnt::header_footer::has_first_page_header
True if a header has been set for the first page at any location.
bool xlnt::header_footer::has_first_page_header
True if a header has been set for the first page at the given location.
void xlnt::header_footer::clear_first_page_header
Remove all headers from the first page.
void xlnt::header_footer::clear_first_page_header
Remove header from the first page at the given location.
header_footer& xlnt::header_footer::first_page_header
Add a header on the first page at the given location with the given text.
rich_text xlnt::header_footer::first_page_header
Get the text of the first page header at the given location. If no first page header has been set, the general header for that location will be returned.
bool xlnt::header_footer::has_odd_even_header
True if different headers have been set for odd and even pages.
bool xlnt::header_footer::has_odd_even_header
True if different headers have been set for odd and even pages at the given location.
void xlnt::header_footer::clear_odd_even_header
Remove odd/even headers at all locations.
void xlnt::header_footer::clear_odd_even_header
Remove odd/even headers at the given location.
header_footer& xlnt::header_footer::odd_even_header
Add a header for odd pages at the given location with the given text.
rich_text xlnt::header_footer::odd_header
Get the text of the odd page header at the given location. If no odd page header has been set, the general header for that location will be returned.
rich_text xlnt::header_footer::even_header
Get the text of the even page header at the given location. If no even page header has been set, the general header for that location will be returned.
bool xlnt::header_footer::has_footer
True if any text has been added at the given location on any page.
void xlnt::header_footer::clear_footer
Remove all footers from all pages.
void xlnt::header_footer::clear_footer
Remove footer at the given location on any page.
header_footer& xlnt::header_footer::footer
Add a footer at the given location with the given text.
header_footer& xlnt::header_footer::footer
Add a footer at the given location with the given text.
rich_text xlnt::header_footer::footer
Get the text of the footer at the given location. If footers are different on odd and even pages, the odd footer will be returned.
bool xlnt::header_footer::has_first_page_footer
True if a footer has been set for the first page at any location.
bool xlnt::header_footer::has_first_page_footer
True if a footer has been set for the first page at the given location.
void xlnt::header_footer::clear_first_page_footer
Remove all footers from the first page.
void xlnt::header_footer::clear_first_page_footer
Remove footer from the first page at the given location.
header_footer& xlnt::header_footer::first_page_footer
Add a footer on the first page at the given location with the given text.
rich_text xlnt::header_footer::first_page_footer
Get the text of the first page footer at the given location. If no first page footer has been set, the general footer for that location will be returned.
bool xlnt::header_footer::has_odd_even_footer
True if different footers have been set for odd and even pages.
bool xlnt::header_footer::has_odd_even_footer
True if different footers have been set for odd and even pages at the given location.
void xlnt::header_footer::clear_odd_even_footer
Remove odd/even footers at all locations.
void xlnt::header_footer::clear_odd_even_footer
Remove odd/even footers at the given location.
header_footer& xlnt::header_footer::odd_even_footer
Add a footer for odd pages at the given location with the given text.
rich_text xlnt::header_footer::odd_footer
Get the text of the odd page footer at the given location. If no odd page footer has been set, the general footer for that location will be returned.
rich_text xlnt::header_footer::even_footer
Get the text of the even page footer at the given location. If no even page footer has been set, the general footer for that location will be returned.
page_margins
xlnt::page_margins::page_margins
double xlnt::page_margins::top
void xlnt::page_margins::top
double xlnt::page_margins::left
void xlnt::page_margins::left
double xlnt::page_margins::bottom
void xlnt::page_margins::bottom
double xlnt::page_margins::right
void xlnt::page_margins::right
double xlnt::page_margins::header
void xlnt::page_margins::header
double xlnt::page_margins::footer
void xlnt::page_margins::footer
page_setup
xlnt::page_setup::page_setup
xlnt::page_break xlnt::page_setup::page_break
void xlnt::page_setup::page_break
xlnt::sheet_state xlnt::page_setup::sheet_state
void xlnt::page_setup::sheet_state
xlnt::paper_size xlnt::page_setup::paper_size
void xlnt::page_setup::paper_size
xlnt::orientation xlnt::page_setup::orientation
void xlnt::page_setup::orientation
bool xlnt::page_setup::fit_to_page
void xlnt::page_setup::fit_to_page
bool xlnt::page_setup::fit_to_height
void xlnt::page_setup::fit_to_height
bool xlnt::page_setup::fit_to_width
void xlnt::page_setup::fit_to_width
void xlnt::page_setup::horizontal_centered
bool xlnt::page_setup::horizontal_centered
void xlnt::page_setup::vertical_centered
bool xlnt::page_setup::vertical_centered
void xlnt::page_setup::scale
double xlnt::page_setup::scale
pane
optional<cell_reference> xlnt::pane::top_left_cell
pane_state xlnt::pane::state
pane_corner xlnt::pane::active_pane
row_t xlnt::pane::y_split
column_t xlnt::pane::x_split
bool xlnt::pane::operator==
range
using xlnt::range::iterator = range_iterator
using xlnt::range::const_iterator = const_range_iterator
using xlnt::range::reverse_iterator = std::reverse_iterator<iterator>
using xlnt::range::const_reverse_iterator = std::reverse_iterator<const_iterator>
xlnt::range::range
xlnt::range::~range
xlnt::range::range
cell_vector xlnt::range::operator[]
const cell_vector xlnt::range::operator[]
bool xlnt::range::operator==
bool xlnt::range::operator!=
cell_vector xlnt::range::vector
const cell_vector xlnt::range::vector
class cell xlnt::range::cell
const class cell xlnt::range::cell
range_reference xlnt::range::reference
std::size_t xlnt::range::length
bool xlnt::range::contains
iterator xlnt::range::begin
iterator xlnt::range::end
const_iterator xlnt::range::begin
const_iterator xlnt::range::end
const_iterator xlnt::range::cbegin
const_iterator xlnt::range::cend
reverse_iterator xlnt::range::rbegin
reverse_iterator xlnt::range::rend
const_reverse_iterator xlnt::range::rbegin
const_reverse_iterator xlnt::range::rend
const_reverse_iterator xlnt::range::crbegin
const_reverse_iterator xlnt::range::crend
range_iterator
xlnt::range_iterator::range_iterator
xlnt::range_iterator::range_iterator
cell_vector xlnt::range_iterator::operator*
range_iterator& xlnt::range_iterator::operator=
bool xlnt::range_iterator::operator==
bool xlnt::range_iterator::operator!=
range_iterator& xlnt::range_iterator::operator--
range_iterator xlnt::range_iterator::operator--
range_iterator& xlnt::range_iterator::operator++
range_iterator xlnt::range_iterator::operator++
range_reference
static range_reference xlnt::range_reference::make_absolute
Convert a coordinate to an absolute coordinate string (B12 -> $B$12)
xlnt::range_reference::range_reference
xlnt::range_reference::range_reference
xlnt::range_reference::range_reference
xlnt::range_reference::range_reference
xlnt::range_reference::range_reference
xlnt::range_reference::range_reference
bool xlnt::range_reference::is_single_cell
std::size_t xlnt::range_reference::width
std::size_t xlnt::range_reference::height
cell_reference xlnt::range_reference::top_left
cell_reference xlnt::range_reference::bottom_right
cell_reference& xlnt::range_reference::top_left
cell_reference& xlnt::range_reference::bottom_right
range_reference xlnt::range_reference::make_offset
std::string xlnt::range_reference::to_string
bool xlnt::range_reference::operator==
bool xlnt::range_reference::operator==
bool xlnt::range_reference::operator==
bool xlnt::range_reference::operator!=
bool xlnt::range_reference::operator!=
bool xlnt::range_reference::operator!=
bool operator==
bool operator==
bool operator!=
bool operator!=
row_properties
optional<double> xlnt::row_properties::height
bool xlnt::row_properties::custom_height
bool xlnt::row_properties::hidden
optional<std::size_t> xlnt::row_properties::style
selection
bool xlnt::selection::has_active_cell
cell_reference xlnt::selection::active_cell
void xlnt::selection::active_cell
range_reference xlnt::selection::sqref
pane_corner xlnt::selection::pane
void xlnt::selection::pane
bool xlnt::selection::operator==
sheet_protection
static std::string xlnt::sheet_protection::hash_password
void xlnt::sheet_protection::password
std::string xlnt::sheet_protection::hashed_password
sheet_view
void xlnt::sheet_view::id
std::size_t xlnt::sheet_view::id
bool xlnt::sheet_view::has_pane
struct pane& xlnt::sheet_view::pane
const struct pane& xlnt::sheet_view::pane
void xlnt::sheet_view::clear_pane
void xlnt::sheet_view::pane
bool xlnt::sheet_view::has_selections
void xlnt::sheet_view::add_selection
void xlnt::sheet_view::clear_selections
std::vector<xlnt::selection> xlnt::sheet_view::selections
class xlnt::selection& xlnt::sheet_view::selection
void xlnt::sheet_view::show_grid_lines
bool xlnt::sheet_view::show_grid_lines
void xlnt::sheet_view::default_grid_color
bool xlnt::sheet_view::default_grid_color
void xlnt::sheet_view::type
sheet_view_type xlnt::sheet_view::type
bool xlnt::sheet_view::operator==
worksheet
using xlnt::worksheet::iterator = range_iterator
Iterate over a non-const worksheet with an iterator of this type.
using xlnt::worksheet::const_iterator = const_range_iterator
Iterate over a non-const worksheet with an iterator of this type.
using xlnt::worksheet::reverse_iterator = std::reverse_iterator<iterator>
Iterate in reverse over a non-const worksheet with an iterator of this type.
using xlnt::worksheet::const_reverse_iterator = std::reverse_iterator<const_iterator>
Iterate in reverse order over a const worksheet with an iterator of this type.
class range const cell_reference& xlnt::worksheet::bottom_right
const class range const cell_reference& bottom_right xlnt::worksheet::const
friend class detail::xlsx_consumer
friend class detail::xlsx_producer
xlnt::worksheet::worksheet
Construct a null worksheet. No methods should be called on such a worksheet.
xlnt::worksheet::worksheet
Copy constructor. This worksheet will point to the same memory as rhs's worksheet.
class workbook& xlnt::worksheet::workbook
Returns a reference to the workbook this worksheet is owned by.
const class workbook& xlnt::worksheet::workbook
Returns a reference to the workbook this worksheet is owned by.
void xlnt::worksheet::garbage_collect
Deletes data held in the worksheet that does not affect the internal data or display. For example, unreference styles and empty cells will be removed.
std::size_t xlnt::worksheet::id
Returns the unique numeric identifier of this worksheet. This will sometimes but not necessarily be the index of the worksheet in the workbook.
void xlnt::worksheet::id
Set the unique numeric identifier. The id defaults to the lowest unused id in the workbook so this should not be called without a good reason.
std::string xlnt::worksheet::title
Returns the title of this sheet.
void xlnt::worksheet::title
Sets the title of this sheet.
cell_reference xlnt::worksheet::frozen_panes
Returns the top left corner of the region above and to the left of which panes are frozen.
void xlnt::worksheet::freeze_panes
Freeze panes above and to the left of top_left_cell.
void xlnt::worksheet::freeze_panes
Freeze panes above and to the left of top_left_coordinate.
void xlnt::worksheet::unfreeze_panes
Remove frozen panes. The data in those panes will be unaffectedthis affects only the view.
bool xlnt::worksheet::has_frozen_panes
Returns true if this sheet has a frozen row, frozen column, or both.
class cell xlnt::worksheet::cell
const class cell xlnt::worksheet::cell
class cell xlnt::worksheet::cell
const class cell xlnt::worksheet::cell
bool xlnt::worksheet::has_cell
class range xlnt::worksheet::range
class range xlnt::worksheet::range
const class range xlnt::worksheet::range
const class range xlnt::worksheet::range
class range xlnt::worksheet::rows
class range xlnt::worksheet::rows
class range xlnt::worksheet::rows
class range xlnt::worksheet::rows
class range xlnt::worksheet::columns
xlnt::column_properties& xlnt::worksheet::column_properties
const xlnt::column_properties& xlnt::worksheet::column_properties
bool xlnt::worksheet::has_column_properties
void xlnt::worksheet::add_column_properties
double xlnt::worksheet::column_width
Calculate the width of the given column. This will be the default column width if a custom width is not set on this column's column_properties.
xlnt::row_properties& xlnt::worksheet::row_properties
const xlnt::row_properties& xlnt::worksheet::row_properties
bool xlnt::worksheet::has_row_properties
void xlnt::worksheet::add_row_properties
double xlnt::worksheet::row_height
Calculate the height of the given row. This will be the default row height if a custom height is not set on this row's row_properties.
cell_reference xlnt::worksheet::point_pos
cell_reference xlnt::worksheet::point_pos
std::string xlnt::worksheet::unique_sheet_name
void xlnt::worksheet::create_named_range
void xlnt::worksheet::create_named_range
bool xlnt::worksheet::has_named_range
class range xlnt::worksheet::named_range
void xlnt::worksheet::remove_named_range
row_t xlnt::worksheet::lowest_row
row_t xlnt::worksheet::highest_row
row_t xlnt::worksheet::next_row
column_t xlnt::worksheet::lowest_column
column_t xlnt::worksheet::highest_column
range_reference xlnt::worksheet::calculate_dimension
void xlnt::worksheet::merge_cells
void xlnt::worksheet::merge_cells
void xlnt::worksheet::merge_cells
void xlnt::worksheet::unmerge_cells
void xlnt::worksheet::unmerge_cells
void xlnt::worksheet::unmerge_cells
std::vector<range_reference> xlnt::worksheet::merged_ranges
void xlnt::worksheet::append
void xlnt::worksheet::append
void xlnt::worksheet::append
void xlnt::worksheet::append
void xlnt::worksheet::append
void xlnt::worksheet::append
bool xlnt::worksheet::operator==
bool xlnt::worksheet::operator!=
bool xlnt::worksheet::operator==
bool xlnt::worksheet::operator!=
void xlnt::worksheet::operator=
class cell xlnt::worksheet::operator[]
const class cell xlnt::worksheet::operator[]
class range xlnt::worksheet::operator[]
const class range xlnt::worksheet::operator[]
class range xlnt::worksheet::operator[]
const class range xlnt::worksheet::operator[]
class range xlnt::worksheet::operator
const class range xlnt::worksheet::operator
bool xlnt::worksheet::compare
bool xlnt::worksheet::has_page_setup
xlnt::page_setup xlnt::worksheet::page_setup
void xlnt::worksheet::page_setup
bool xlnt::worksheet::has_page_margins
xlnt::page_margins xlnt::worksheet::page_margins
void xlnt::worksheet::page_margins
range_reference xlnt::worksheet::auto_filter
void xlnt::worksheet::auto_filter
void xlnt::worksheet::auto_filter
void xlnt::worksheet::auto_filter
void xlnt::worksheet::clear_auto_filter
bool xlnt::worksheet::has_auto_filter
void xlnt::worksheet::reserve
bool xlnt::worksheet::has_header_footer
class header_footer xlnt::worksheet::header_footer
void xlnt::worksheet::header_footer
void xlnt::worksheet::parent
std::vector<std::string> xlnt::worksheet::formula_attributes
xlnt::sheet_state xlnt::worksheet::sheet_state
void xlnt::worksheet::sheet_state
iterator xlnt::worksheet::begin
iterator xlnt::worksheet::end
const_iterator xlnt::worksheet::begin
const_iterator xlnt::worksheet::end
const_iterator xlnt::worksheet::cbegin
const_iterator xlnt::worksheet::cend
class range xlnt::worksheet::iter_cells
void xlnt::worksheet::print_title_rows
void xlnt::worksheet::print_title_rows
void xlnt::worksheet::print_title_cols
void xlnt::worksheet::print_title_cols
std::string xlnt::worksheet::print_titles
void xlnt::worksheet::print_area
range_reference xlnt::worksheet::print_area
bool xlnt::worksheet::has_view
sheet_view xlnt::worksheet::view
void xlnt::worksheet::add_view
void xlnt::worksheet::clear_page_breaks
Remove all manual column and row page breaks (represented as dashed blue lines in the page view in Excel).
const std::vector<row_t>& xlnt::worksheet::page_break_rows
Returns vector where each element represents a row which will break a page below it.
void xlnt::worksheet::page_break_at_row
Add a page break at the given row.
const std::vector<column_t>& xlnt::worksheet::page_break_columns
Returns vector where each element represents a column which will break a page to the right.
void xlnt::worksheet::page_break_at_column
Add a page break at the given column.