Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef UT_UNITS_H
00021 #define UT_UNITS_H
00022
00023
00024
00025
00026
00027 #ifndef UT_TYPES_H
00028 #include "ut_types.h"
00029 #endif
00030
00031 G_BEGIN_DECLS
00032
00033 #define UT_PAPER_UNITS_PER_INCH 100
00034
00035 #define UT_LAYOUT_RESOLUTION 1440
00036
00037
00038
00039 #define UT_INT_MAX 2147483647
00040
00041 enum UT_Dimension {
00042 DIM_IN,
00043 DIM_CM,
00044 DIM_MM,
00045 DIM_PI,
00046 DIM_PT,
00047 DIM_PX,
00048 DIM_PERCENT,
00049 DIM_STAR,
00050 DIM_none
00051 };
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062 ABI_EXPORT double UT_convertToInches(const char* s);
00063 ABI_EXPORT double UT_convertDimToInches (double f, UT_Dimension dim);
00064 ABI_EXPORT double UT_convertDimensions(double f, UT_Dimension from, UT_Dimension to);
00065 ABI_EXPORT double UT_convertToPoints(const char* s);
00066 ABI_EXPORT double UT_convertToDimension(const char* s, UT_Dimension dim);
00067 ABI_EXPORT UT_sint32 UT_convertToLogicalUnits(const char* s);
00068 ABI_EXPORT UT_sint32 UT_convertSizeToLayoutUnits(double Value, UT_Dimension dim);
00069 ABI_EXPORT double UT_convertDimensionless(const char * sz);
00070 ABI_EXPORT double UT_convertInchesToDimension(double inches, UT_Dimension dim);
00071
00072 ABI_EXPORT UT_sint32 UT_paperUnits(const char * sz);
00073 ABI_EXPORT double UT_inchesFromPaperUnits(UT_sint32 iPaperUnits);
00074 ABI_EXPORT UT_sint32 UT_paperUnitsFromInches(double dInches);
00075
00076 ABI_EXPORT const char * UT_incrementDimString(const char * dimString, double inc);
00077 ABI_EXPORT const char * UT_multiplyDimString(const char * dimString, double mult);
00078 ABI_EXPORT UT_Dimension UT_determineDimension(const char * sz, UT_Dimension fallback = DIM_IN);
00079 ABI_EXPORT const char * UT_dimensionName(UT_Dimension dim);
00080 ABI_EXPORT const char * UT_convertInchesToDimensionString(UT_Dimension, double valueInInches, const char * szPrecision = NULL);
00081 ABI_EXPORT const char * UT_formatDimensionString(UT_Dimension, double value, const char * szPrecision = NULL);
00082 ABI_EXPORT const char * UT_reformatDimensionString(UT_Dimension dim, const char *sz, const char * szPrecision = NULL);
00083 ABI_EXPORT const char * UT_convertToDimensionlessString(double value, const char * szPrecision = NULL);
00084 ABI_EXPORT const char * UT_formatDimensionedValue(double value, const char * szUnits, const char * szPrecision = NULL);
00085
00086 ABI_EXPORT bool UT_hasDimensionComponent(const char * sz);
00087 ABI_EXPORT bool UT_isValidDimensionString(const char * sz, size_t max_length = 0);
00088
00089 ABI_EXPORT UT_uint32 UT_getDimensionPrecisicion (UT_Dimension dim);
00090 ABI_EXPORT double UT_getDimensionResolution (UT_Dimension dim);
00091 ABI_EXPORT double UT_convertFraction(const char * sz);
00092
00093 G_END_DECLS
00094
00095 #endif