Worksheet Interface

The Worksheet interface represents an individual worksheet within a workbook, providing comprehensive functionality for cell manipulation, formatting, and sheet management.

Classes

class oo::iWorksheet

Main worksheet interface for cell operations, formatting, and sheet configuration.

Dimensions and Basic Information

int min_row() const

Get the minimum row index.

Returns:

Minimum row index

int min_col() const

Get the minimum column index.

Returns:

Minimum column index

int max_row() const

Get the maximum row index.

Returns:

Maximum row index

int max_col() const

Get the maximum column index.

Returns:

Maximum column index

const char *name() const

Get the worksheet name.

Returns:

Worksheet name

bool set_name(const char *newname)

Set the worksheet name.

Parameters:

newname – New name for the worksheet

Returns:

true if successful, false if name is invalid or duplicate

SheetTypeEnum sheet_type() const

Get the worksheet type.

Returns:

Type of the worksheet

SheetStateEnum get_sheet_state() const

Get the visibility state of the worksheet.

Returns:

Visibility state

Cell Data Operations

CellTypeEnum cell_type(int row, int col) const

Get the data type of a cell.

Parameters:
  • row – Row index

  • col – Column index

Returns:

Cell data type

bool contains_formula(int row, int col) const

Check if a cell contains a formula.

Parameters:
  • row – Row index

  • col – Column index

Returns:

true if cell contains formula

bool contains_richtext(int row, int col) const

Check if a cell contains rich text.

Parameters:
  • row – Row index

  • col – Column index

Returns:

true if cell contains rich text

Data Retrieval Methods

double get_num(int row, int col) const

Get numeric value from a cell.

Parameters:
  • row – Row index

  • col – Column index

Returns:

Numeric value

const char *get_text(int row, int col) const

Get text value from a cell.

Parameters:
  • row – Row index

  • col – Column index

Returns:

Text string

bool get_boolean(int row, int col) const

Get boolean value from a cell.

Parameters:
  • row – Row index

  • col – Column index

Returns:

Boolean value

double get_datetime(int row, int col) const

Get datetime value from a cell.

Parameters:
  • row – Row index

  • col – Column index

Returns:

DateTime value as double

iRichtext *get_richtext(int row, int col) const

Get rich text object from a cell.

Parameters:
  • row – Row index

  • col – Column index

Returns:

Pointer to rich text object

const char *get_formula_expr(int row, int col) const

Get formula expression from a cell.

Parameters:
  • row – Row index

  • col – Column index

Returns:

Formula expression string

ErrorCodeEnum get_error(int row, int col) const

Get error code from a cell.

Parameters:
  • row – Row index

  • col – Column index

Returns:

Error code enumerator

Data Setting Methods

bool set_num(int row, int col, double val)

Set numeric value in a cell.

Parameters:
  • row – Row index

  • col – Column index

  • val – Numeric value to set

Returns:

true if successful

bool set_text(int row, int col, const char *val)

Set text value in a cell.

Parameters:
  • row – Row index

  • col – Column index

  • val – Text string to set

Returns:

true if successful

bool set_boolean(int row, int col, bool b)

Set boolean value in a cell.

Parameters:
  • row – Row index

  • col – Column index

  • b – Boolean value to set

Returns:

true if successful

bool set_datetime(int row, int col, double dt)

Set datetime value in a cell.

Parameters:
  • row – Row index

  • col – Column index

  • dt – DateTime value as double

Returns:

true if successful

bool set_richtext(int row, int col, iRichtext *rt)

Set rich text in a cell.

Parameters:
  • row – Row index

  • col – Column index

  • rt – Rich text object to set

Returns:

true if successful

bool set_error(int row, int col, ErrorCodeEnum code)

Set error value in a cell.

Parameters:
  • row – Row index

  • col – Column index

  • code – Error code enumerator to set

Returns:

true if successful

Formula Operations

bool set_formula(int row, int col, const char *expr)

Set formula in a cell.

Parameters:
  • row – Row index

  • col – Column index

  • expr – Formula expression

Returns:

true if successful

bool set_formula_num(int row, int col, double val)

Set formula that returns numeric value.

Parameters:
  • row – Row index

  • col – Column index

  • val – Numeric value for formula result

Returns:

true if successful

bool set_formula_string(int row, int col, const char *s)

Set formula that returns string value.

Parameters:
  • row – Row index

  • col – Column index

  • s – String value for formula result

Returns:

true if successful

bool set_formula_boolean(int row, int col, bool b)

Set formula that returns boolean value.

Parameters:
  • row – Row index

  • col – Column index

  • b – Boolean value for formula result

Returns:

true if successful

bool set_formula_datetime(int row, int col, double dt)

Set formula that returns datetime value.

Parameters:
  • row – Row index

  • col – Column index

  • dt – DateTime value for formula result

Returns:

true if successful

bool set_formula_error(int row, int col, ErrorCodeEnum code)

Set formula that returns error value.

Parameters:
  • row – Row index

  • col – Column index

  • code – Error code for formula result

Returns:

true if successful

void clear_contents(int begin_row, int begin_col, int end_row, int end_col)

Clear cell contents in a range.

Parameters:
  • begin_row – Starting row index

  • begin_col – Starting column index

  • end_row – Ending row index

  • end_col – Ending column index

Style and Formatting

void set_cell_style(int row, int col, iStyle *style)

Set style for a single cell.

Parameters:
  • row – Row index

  • col – Column index

  • style – Style object to apply

iStyle *cell_style(int row, int col) const

Get style of a specific cell.

Parameters:
  • row – Row index

  • col – Column index

Returns:

Pointer to cell style

Warning

To save memory, cell_style() returns a pointer to the same instance:

Style* s1 = cell_style(1, 1); //s1 is the format of cell (1,1)
Style* s2 = cell_style(2, 2); //s1 is the format of cell (2,2)

That is to say, in the same worksheet, all calls to cell_style() result in the return value of the last call to cell_style(). Please use get_style() if you want independent return values.

iStyle *get_style(int row, int col) const

Get style of a specific cell.

Parameters:
  • row – Row index

  • col – Column index

Returns:

Pointer to effective style

Note

When the returned pointer is no longer in use, it is recommended to call release() to release its memory.

void set_range_style(int start_row, int start_col, int stop_row, int stop_col, iStyle *style)

Set style for a cell range.

Parameters:
  • start_row – Starting row index

  • start_col – Starting column index

  • stop_row – Ending row index

  • stop_col – Ending column index

  • style – Style object to apply

Row and Column Dimensions

bool is_default_row_height(int start, int end = 0) const

Check if rows have default height.

Parameters:
  • start – Starting row index

  • end – Ending row index (if 0, checks only start row)

Returns:

true if rows have default height

bool get_custom_row_height(int start, int end, double *height, RowHeightUnitEnum unit = ROWHEIGHT_POINTS) const

Get custom row height.

Parameters:
  • start – Starting row index

  • end – Ending row index

  • height – Pointer to store height value

  • unit – Unit of measurement

Returns:

true if custom height exists

void set_custom_row_height(int start, int end, double height, RowHeightUnitEnum unit = ROWHEIGHT_POINTS)

Set custom row height.

Parameters:
  • start – Starting row index

  • end – Ending row index

  • height – Height value to set

  • unit – Unit of measurement

bool is_default_col_width(int start, int end = 0) const

Check if columns have default width.

Parameters:
  • start – Starting column index

  • end – Ending column index (if 0, checks only start column)

Returns:

true if columns have default width

bool get_custom_col_width(int start, int end, double *width, ColWidthUnitEnum unit = COLWIDTH_CHARS) const

Get custom column width.

Parameters:
  • start – Starting column index

  • end – Ending column index

  • width – Pointer to store width value

  • unit – Unit of measurement

Returns:

true if custom width exists

void set_custom_col_width(int start, int end, double width, ColWidthUnitEnum unit = COLWIDTH_CHARS)

Set custom column width.

Parameters:
  • start – Starting column index

  • end – Ending column index

  • width – Width value to set

  • unit – Unit of measurement

Row and Column Styles

iStyle *row_style(int row)

Get row style.

Parameters:

row – Row index

Returns:

Pointer to row style

void remove_row_style(int row)

Remove row style.

Parameters:

row – Row index

void set_row_style(int start_row, int stop_row, iStyle *style)

Set style for a row range.

Parameters:
  • start_row – Starting row index

  • stop_row – Ending row index

  • style – Style object to apply

iStyle *col_style(int col)

Get column style.

Parameters:

col – Column index

Returns:

Pointer to column style

void remove_col_style(int col)

Remove column style.

Parameters:

col – Column index

void set_col_style(int start_col, int stop_col, iStyle *style)

Set style for a column range.

Parameters:
  • start_col – Starting column index

  • stop_col – Ending column index

  • style – Style object to apply

Visibility Control

bool row_hidden(int row) const

Check if a row is hidden.

Parameters:

row – Row index

Returns:

true if row is hidden

void set_row_hidden(int start_row, int stop_row, bool hidden = true)

Set row visibility.

Parameters:
  • start_row – Starting row index

  • stop_row – Ending row index

  • hidden – true to hide, false to show

bool col_hidden(int col) const

Check if a column is hidden.

Parameters:

col – Column index

Returns:

true if column is hidden

void set_col_hidden(int start_col, int stop_col, bool hidden = true)

Set column visibility.

Parameters:
  • start_col – Starting column index

  • stop_col – Ending column index

  • hidden – true to hide, false to show

Row and Column Operations

bool insert_row(int row, int count = 1)

Insert rows.

Parameters:
  • row – Row index to insert at

  • count – Number of rows to insert

Returns:

true if successful

bool delete_row(int begin, int end = 0)

Delete rows.

Parameters:
  • begin – Starting row index

  • end – Ending row index (if 0, deletes only begin row)

Returns:

true if successful

bool insert_col(int col, int count = 1)

Insert columns.

Parameters:
  • col – Column index to insert at

  • count – Number of columns to insert

Returns:

true if successful

bool delete_col(int begin, int end = 0)

Delete columns.

Parameters:
  • begin – Starting column index

  • end – Ending column index (if 0, deletes only begin column)

Returns:

true if successful

Range Shifting Operations

bool shift_range_down(int start_col, int end_col, int start_row, int count = 1)

Shift range downward.

Parameters:
  • start_col – Starting column index

  • end_col – Ending column index

  • start_row – Starting row index

  • count – Number of rows to shift

Returns:

true if successful

bool shift_range_up(int start_col, int end_col, int start_row, int count = 1)

Shift range upward.

Parameters:
  • start_col – Starting column index

  • end_col – Ending column index

  • start_row – Starting row index

  • count – Number of rows to shift

Returns:

true if successful

bool shift_range_right(int start_row, int end_row, int start_col, int count = 1)

Shift range to the right.

Parameters:
  • start_row – Starting row index

  • end_row – Ending row index

  • start_col – Starting column index

  • count – Number of columns to shift

Returns:

true if successful

bool shift_range_left(int start_row, int end_row, int start_col, int count = 1)

Shift range to the left.

Parameters:
  • start_row – Starting row index

  • end_row – Ending row index

  • start_col – Starting column index

  • count – Number of columns to shift

Returns:

true if successful

Images and Background

void set_bg_picture(const char *file)

Set background picture.

Parameters:

file – Path to image file

int add_cell_image(const char *file, int start_row, int start_col, int stop_row, int stop_col)

Add an image anchored to specific cells.

Parameters:
  • file – Path to image file

  • start_row – Starting row anchor

  • start_col – Starting column anchor

  • stop_row – Ending row anchor

  • stop_col – Ending column anchor

Returns:

Image id

int add_image_with_two_cells(const char *file, int row1, int col1, int row2, int col2, int offset_x1 = 0, int offset_y1 = 0, int offset_x2 = 0, int offset_y2 = 0)

Add an image to the worksheet, anchoring it between two cells.

Parameters:
  • file – Path to the image file.

  • row1 – Row index of the top-left anchor cell.

  • col1 – Column index of the top-left anchor cell.

  • row2 – Row index of the bottom-right anchor cell.

  • col2 – Column index of the bottom-right anchor cell.

  • offset_x1 – Horizontal offset from the top-left anchor cell (in pixels).

  • offset_y1 – Vertical offset from the top-left anchor cell (in pixels).

  • offset_x2 – Horizontal offset from the bottom-right anchor cell (in pixels).

  • offset_y2 – Vertical offset from the bottom-right anchor cell (in pixels).

Returns:

ID of the added image.

int add_image_with_one_cell(const char *file, int row, int col, int width = 0, int height = 0, double scale = 1.0, int offset_x = 0, int offset_y = 0)

Add an image to the worksheet, anchored to a single cell. If both width and height are 0, the image size is determined by the scale parameter.

Parameters:
  • file – Path to the image file.

  • row – Row index of the anchor cell.

  • col – Column index of the anchor cell.

  • width – Desired width of the image in pixels (0 to use scaling).

  • height – Desired height of the image in pixels (0 to use scaling).

  • scale – Scaling factor for the image (used when width and height are 0).

  • offset_x – Horizontal offset from the anchor cell (in pixels).

  • offset_y – Vertical offset from the anchor cell (in pixels).

Returns:

ID of the added image.

int add_absolute_image(const char *file, int x, int y, int width = 0, int height = 0, double scale = 1.0)

Add an image to the worksheet, positioned using absolute pixel coordinates. If both width and height are 0, the image size is determined by the scale parameter.

Parameters:
  • file – Path to the image file.

  • x – X-coordinate (in pixels) for the top-left corner of the image.

  • y – Y-coordinate (in pixels) for the top-left corner of the image.

  • width – Desired width of the image in pixels (0 to use scaling).

  • height – Desired height of the image in pixels (0 to use scaling).

  • scale – Scaling factor for the image (used when width and height are 0).

Returns:

ID of the added image.

int image_num() const

Get the total number of images currently in the worksheet.

Returns:

Number of images.

int get_image_id(int index)

Retrieve the ID of an image based on its insertion order.

Parameters:

index – Zero‑based index of the image (order of insertion).

Returns:

Image ID.

ImageAnchorEnum image_anchor_type(int image_id)

Get the anchoring type of the specified image.

Parameters:

image_id – ID of the target image.

Returns:

An enumeration value of type ImageAnchorEnum.

bool get_anchored_cell(int image_id, int *row, int *col)

Retrieve the cell anchor coordinates for an image that uses single‑cell anchoring.

Parameters:
  • image_id – ID of the target image.

  • row – Pointer to store the row index of the anchor cell.

  • col – Pointer to store the column index of the anchor cell.

Returns:

true if successful, false otherwise.

bool get_absolute_coord(int image_id, int *x, int *y)

Retrieve the absolute pixel coordinates for an image that uses absolute positioning.

Parameters:
  • image_id – ID of the target image.

  • x – Pointer to store the X‑coordinate (in pixels).

  • y – Pointer to store the Y‑coordinate (in pixels).

Returns:

true if successful, false otherwise.

void delete_image(int image_id)

Remove an image from the worksheet by its ID.

Parameters:

image_id – ID of the image to delete.

void remove_image(int row, int col)

Remove an image by the cell to which it is anchored.

Parameters:
  • row – Row index of the anchor cell.

  • col – Column index of the anchor cell.

void remove_absolute_image(int x, int y)

Remove an image by its absolute anchor coordinates.

Parameters:
  • x – X‑coordinate (in pixels) of the image’s anchor point.

  • y – Y‑coordinate (in pixels) of the image’s anchor point.

Cell Navigation

bool first_data_cell(int *row, int *col) const

Find the first cell with data.

Parameters:
  • row – Pointer to store row index

  • col – Pointer to store column index

Returns:

true if data cell found

bool last_data_cell(int *row, int *col) const

Find the last cell with data.

Parameters:
  • row – Pointer to store row index

  • col – Pointer to store column index

Returns:

true if data cell found

Cell Merging

int merged_num() const

Get number of merged ranges.

Returns:

Number of merged ranges

bool merged_range(int index, int *start_row, int *start_col, int *stop_row, int *stop_col) const

Get a merged range.

Parameters:
  • index – Index of merged ranges

  • start_row – Pointer to store merge start row

  • start_col – Pointer to store merge start column

  • stop_row – Pointer to store merge end row

  • stop_col – Pointer to store merge end column

Returns:

true if successful

bool merge(int start_row, int start_col, int stop_row, int stop_col)

Merge cells in a range.

Parameters:
  • start_row – Starting row index

  • start_col – Starting column index

  • stop_row – Ending row index

  • stop_col – Ending column index

Returns:

true if successful

bool unmerge(int row, int col)

Unmerge cells at specified location.

Parameters:
  • row – Row index in merged range

  • col – Column index in merged range

Returns:

true if successful

Tables (Table Definition)

int tabledef_count() const

Get number of tables in the worksheet.

Returns:

Number of tables

const char *get_tabledef_name(int index) const

Get table name by index.

Parameters:

index – Table index

Returns:

Table name

iTabledef *set_tabledef_name(int index, const char *newName)

Set table name.

Parameters:
  • index – Table index

  • newName – New table name

Returns:

Pointer to table object

iTabledef *get_tabledef(int index) const

Get table by index.

Parameters:

index – Table index

Returns:

Pointer to table object

iTabledef *get_tabledef_by_name(const char *name) const

Get table by name.

Parameters:

name – Table name

Returns:

Pointer to table object

iTabledef *add_tabledef(const char *name, int begin_row, int begin_col, int end_row, int end_col)

Add a new table to the worksheet.

Parameters:
  • name – Table name

  • begin_row – Starting row index

  • begin_col – Starting column index

  • end_row – Ending row index

  • end_col – Ending column index

Returns:

Pointer to new table object

bool delete_tabledef(const char *name)

Delete a table by name.

Parameters:

name – Table name to delete

Returns:

true if successful

Grouping and Outlining

void group_rows(int begin_row, int end_row, bool collapsed = false)

Group rows for outlining.

Parameters:
  • begin_row – Starting row index

  • end_row – Ending row index

  • collapsed – true to initially collapse the group

void ungroup_rows(int begin_row, int end_row)

Ungroup rows.

Parameters:
  • begin_row – Starting row index

  • end_row – Ending row index

void group_cols(int begin_col, int end_col, bool collapsed = true)

Group columns for outlining.

Parameters:
  • begin_col – Starting column index

  • end_col – Ending column index

  • collapsed – true to initially collapse the group

void ungroup_cols(int begin_col, int end_col)

Ungroup columns.

Parameters:
  • begin_col – Starting column index

  • end_col – Ending column index

int row_outline_level(int row, bool *collapsed = nullptr) const

Get row outline level.

Parameters:
  • row – Row index

  • collapsed – Pointer to store collapse state

Returns:

Outline level

int col_outline_level(int col, bool *collapsed = nullptr) const

Get column outline level.

Parameters:
  • col – Column index

  • collapsed – Pointer to store collapse state

Returns:

Outline level

int max_row_outline_level() const

Get maximum row outline level.

Returns:

Maximum outline level

int max_col_outline_level() const

Get maximum column outline level.

Returns:

Maximum outline level

void delete_row_outline()

Remove all row outlining.

void delete_col_outline()

Remove all column outlining.

bool group_summary_below() const

Check if group summary rows are below detail.

Returns:

true if summary below detail

void set_group_summary_below(bool below)

Set group summary row position.

Parameters:

below – true for summary below detail, false for above

bool group_summary_right() const

Check if group summary columns are to the right of detail.

Returns:

true if summary right of detail

void set_group_summary_right(bool right)

Set group summary column position.

Parameters:

right – true for summary right of detail, false for left

Sheet Protection

bool is_protected() const

Check if worksheet is protected.

Returns:

true if protected

bool protect(SheetProtectEnum item = PROTECT_DEFAULT, const char *password = nullptr)

Protect the worksheet.

Parameters:
  • item – Protection options

  • password – Optional password

Returns:

true if successful

void unprotect()

Unprotect the worksheet.

bool protect_range(int start_row, int start_col, int end_row, int end_col)

Protect specific cell range.

Parameters:
  • start_row – Starting row index

  • start_col – Starting column index

  • end_row – Ending row index

  • end_col – Ending column index

Returns:

true if successful

bool set_editable_range(int start_row, int start_col, int end_row, int end_col)

Allow editing in specific range on protected sheet.

Parameters:
  • start_row – Starting row index

  • start_col – Starting column index

  • end_row – Ending row index

  • end_col – Ending column index

Returns:

true if successful

int editable_range_count() const

Get number of editable ranges.

Returns:

Number of edit ranges

const char *get_editable_range(int index, int *start_row = nullptr, int *start_col = nullptr, int *stop_row = nullptr, int *stop_col = nullptr) const

Get editable range information.

Parameters:
  • index – Editable range index

  • start_row – Pointer to store starting row

  • start_col – Pointer to store starting column

  • stop_row – Pointer to store ending row

  • stop_col – Pointer to store ending column

Returns:

Range name

bool delete_editable_range(int index)

Delete an editable range.

Parameters:

index – Editable range index to delete

Returns:

true if successful

View Settings

int zoom() const

Get worksheet zoom level.

Returns:

Zoom percentage

void set_zoom(int zoom)

Set worksheet zoom level.

Parameters:

zoom – Zoom percentage

bool right_to_left() const

Check if right-to-left display is enabled.

Returns:

true if right-to-left

void set_right_to_left(bool right_to_left = true)

Set right-to-left display mode.

Parameters:

right_to_left – true for right-to-left, false for left-to-right

void topleft_cell(int *row, int *col) const

Get top-left visible cell.

Parameters:
  • row – Pointer to store row index

  • col – Pointer to store column index

void set_topleft_cell(int row, int col)

Set top-left visible cell.

Parameters:
  • row – Row index

  • col – Column index

void active_cell(int *row, int *col) const

Get active cell position.

Parameters:
  • row – Pointer to store row index

  • col – Pointer to store column index

void set_active_cell(int row, int col)

Set active cell.

Parameters:
  • row – Row index

  • col – Column index

void split_cell(int *row, int *col) const

Get split position.

Parameters:
  • row – Pointer to store split row

  • col – Pointer to store split column

void set_split_cell(int row, int col)

Set split position.

Parameters:
  • row – Split row index

  • col – Split column index

bool display_gridlines() const

Check if gridlines are displayed.

Returns:

true if gridlines visible

void set_display_gridlines(bool show = true)

Set gridline visibility.

Parameters:

show – true to show gridlines, false to hide

Page Breaks

int row_break_count() const

Get number of row page breaks.

Returns:

Number of row breaks

int row_break(int index) const

Get row break position.

Parameters:

index – Break index

Returns:

Row index of break

bool set_row_break(int row, bool pageBreak = true)

Set row page break.

Parameters:
  • row – Row index for break

  • pageBreak – true for page break, false for manual break

Returns:

true if successful

int col_break_count() const

Get number of column page breaks.

Returns:

Number of column breaks

int col_break(int index) const

Get column break position.

Parameters:

index – Break index

Returns:

Column index of break

bool set_col_break(int col, bool pageBreak = true)

Set column page break.

Parameters:
  • col – Column index for break

  • pageBreak – true for page break, false for manual break

Returns:

true if successful

Page Margins

double left_margin() const

Get left margin.

Returns:

Left margin value

void set_left_margin(double value)

Set left margin.

Parameters:

value – Margin value

double right_margin() const

Get right margin.

Returns:

Right margin value

void set_right_margin(double value)

Set right margin.

Parameters:

value – Margin value

double top_margin() const

Get top margin.

Returns:

Top margin value

void set_top_margin(double value)

Set top margin.

Parameters:

value – Margin value

double bottom_margin() const

Get bottom margin.

Returns:

Bottom margin value

void set_bottom_margin(double value)

Set bottom margin.

Parameters:

value – Margin value

double header_margin() const

Get header margin.

Returns:

Header margin value

void set_header_margin(double value)

Set header margin.

Parameters:

value – Margin value

double footer_margin() const

Get footer margin.

Returns:

Footer margin value

Set footer margin.

Parameters:

value – Margin value

Page Setup

int paper() const

Get paper size code.

Returns:

Paper size code

bool set_paper(int paper_code)

Set paper size.

Parameters:

paper_code – Paper size code

Returns:

true if successful

int print_scale() const

Get print scale.

Returns:

Print scale percentage

void set_print_scale(int zoom)

Set print scale.

Parameters:

zoom – Scale percentage

PageOrientEnum page_orientation() const

Get page orientation.

Returns:

Page orientation

void set_page_orientation(PageOrientEnum orientation)

Set page orientation.

Parameters:

orientation – Orientation to set

PrintErrorEnum print_errors() const

Get error printing method.

Returns:

Error printing method

void set_print_errors(PrintErrorEnum way)

Set how errors are printed.

Parameters:

way – Error printing method

int fit_page_height() const

Get fit to page height setting.

Returns:

Number of pages high to fit

void set_fit_page_height(int num)

Set fit to page height.

Parameters:

num – Number of pages high to fit (0 to disable)

int fit_page_width() const

Get fit to page width setting.

Returns:

Number of pages wide to fit

void set_fit_page_width(int num)

Set fit to page width.

Parameters:

num – Number of pages wide to fit (0 to disable)

Headers and Footers

const char *page_header() const

Get page header.

Returns:

Header text

void set_page_header(const char *header)

Set page header.

Parameters:

header – Header text

const char *page_footer() const

Get page footer.

Returns:

Footer text

void set_page_footer(const char *footer)

Set page footer.

Parameters:

footer – Footer text

Usage Example

#include "oosxl.hxx"

// Get worksheet from workbook
oo::iWorksheet* sheet = workbook->get_sheet(0);

// Set cell values
sheet->set_text(0, 0, "Name");
sheet->set_text(0, 1, "Age");
sheet->set_num(1, 0, 25.5);
sheet->set_boolean(1, 1, true);

// Apply styles
oo::iStyle* headerStyle = workbook->make_normal_style();
headerStyle->set_bold(true);
sheet->set_range_style(0, 0, 0, 1, headerStyle);

// Merge cells
sheet->merge(0, 0, 0, 2);

// Add hyperlink
sheet->add_hyperlink("https://example.com", 2, 0, 2, 0);