# PrintOptions Struct Reference

Options for formatting and display of mathematical structures/results. More...

`#include <includes.h>`

List of all members.

## Public Member Functions
const string & | comma () const
| Returns the comma sign used (default sign or comma_sign).
const string & | decimalpoint () const
| Returns the decimal sign used (default sign or decimalpoint_sign).
## Public Attributes
int | min_exp
int | base
| Number base for displaying numbers. Default: 10.
BaseDisplay | base_display
| How prefixes for numbers in non-decimal bases will be displayed.
bool | lower_case_numbers
| Use lower case for non-numeric characters for bases > 10. Default: false.
bool | lower_case_e
| Use lower case e for base-10 exponent (ex. 1.2e8 instead of 1.2E8). Default: false.
NumberFractionFormat | number_fraction_format
| If rational numbers will be displayed with decimals, as a fraction, or something in between. Default: FRACTION_DECIMAL.
bool | indicate_infinite_series
| Show that the digit series of a number continues forever with three dots, instead of rounding (ex. 2/3 displays as 0.666666... instead of 0.666667). Default: false.
bool | show_ending_zeroes
| Show ending zeroes for approximate numbers to indicate precision (ex.1.2300000 instead of 1.23) . Default: false.
bool | abbreviate_names
| Prefer abbreviated names of variables, units, functions etc. Default: true.
bool | use_reference_names
| Prefer reference names of variables, units, functions etc. Default: false.
bool | place_units_separately
| Isolate units at the end of the displayed expression (ex. x/y m/s instead of (x m)/(y s)). Default: true.
bool | use_unit_prefixes
| Use prefixes for units when appropriate. Default: true.
bool | use_prefixes_for_currencies
| Use prefixes for currencies if unit prefixes are om. Default: false.
bool | use_all_prefixes
| Use all decimal SI prefixes. If false, prefixes which is not a multiple of thousand (centi, deci, deka, hekto) will not be used automatically. Default: false.
bool | use_denominator_prefix
| If set to true, prefixes will be split between numerator and denominator in a unit expression (millimeter per kilogram instead of micrometer per gram). Default: true.
bool | negative_exponents
| If true, negative exponents will be used instead of division (ex. 5/x^2 becomes 5*x^-2). Default: false.
bool | short_multiplication
| Avoid using multiplication sign, when appropriate. Default: true.
bool | limit_implicit_multiplication
| Use a format compatible with ParseOptions::limit_implicit_multiplication. Default: false.
bool | allow_non_usable
| If it is not necessary that the displayed expression can be parsed correctly. Default: false.
bool | use_unicode_signs
| If unicode signs can be displayed. Default: false.
MultiplicationSign | multiplication_sign
| Sign used for display of multiplication. Default: MULTIPLICATION_SIGN_DOT.
DivisionSign | division_sign
| Sign used for display of division. Default: DIVISION_SIGN_DIVISION_SLASH.
bool | spacious
| If space will be used to make the output look nicer. Default: true.
bool | excessive_parenthesis
| Use parentheses even when not necessary. Default: false.
bool | halfexp_to_sqrt
| Transform raised to 1/2 to square root function. Default: true.
int | min_decimals
| Minimum number of decimals to display for numbers. Default: 0.
int | max_decimals
| Maximum number of decimals to display for numbers. A negative value disables the limit. Default: -1.
bool | use_min_decimals
| Enable use of min_decimals. False is equivalent to a min_decimals value of zero. Default: true.
bool | use_max_decimals
| Enable use of max_decimals. False is equivalent to a negative max_decimals value. Default: true.
bool | round_halfway_to_even
| If true round halfway numbers to nearest even number, otherwise round upwards. Default: false.
bool | improve_division_multipliers
| Multiply numerator and denominator to get integers (ex. (6x+y)/2z instead of (3x+0.5y)/z). Default: true.
Prefix * | prefix
| Force use of a specific prefix for units if not NULL. Default: NULL.
bool * | is_approximate
| If not NULL will be set to true if the output is approximate. Default: NULL.
SortOptions | sort_options
| Options for the order of values in the displayed expression. Default: default_sort_options.
string | comma_sign
| Comma sign or empty string to use default comma sign. Default: empty string.
string | decimalpoint_sign
| Decimal sign or empty string to use default decimal sign. Default: empty string.
bool(* | can_display_unicode_string_function )(const char *, void *)
| Function that returns true if a text string with unicode signs can be properly displayed. Default: NULL.
void * | can_display_unicode_string_arg
| Argument passed to can_display_unicode_string_function. Default: NULL.
bool | hide_underscore_spaces
| Replace underscores in names with spaces, unless name has suffix. Default: false.
bool | preserve_format
| Preserves the format of the structure (no sorting, no changed prefixes, no improved division multipliers, etc.). Default: false.
bool | allow_factorization
| Allows factorization to occur in the output (should be set to true if the structure has been factorized). Default: false.
bool | spell_out_logical_operators
| If logical operators will be spelled as AND and OR instead of && and ||. Default: false.
bool | restrict_to_parent_precision
| Displays children of the structure with no higher precision than the parent. Default: true.

## Detailed Description

Options for formatting and display of mathematical structures/results.

The documentation for this struct was generated from the following file:

- libqalculate/includes.h