diff options
Diffstat (limited to 'fontconfig')
-rw-r--r-- | fontconfig/doc/fcrange.fncs | 10 | ||||
-rw-r--r-- | fontconfig/fontconfig/fontconfig.h | 3 | ||||
-rw-r--r-- | fontconfig/src/fcrange.c | 23 |
3 files changed, 36 insertions, 0 deletions
diff --git a/fontconfig/doc/fcrange.fncs b/fontconfig/doc/fcrange.fncs index 605459525..4181b8093 100644 --- a/fontconfig/doc/fcrange.fncs +++ b/fontconfig/doc/fcrange.fncs @@ -62,3 +62,13 @@ integer sized value. all memory associated with it. @SINCE@ 2.11.91 @@ + +@RET@ FcBool +@FUNC@ FcRangeGetDouble +@TYPE1@ const FcRange * @ARG1@ range +@TYPE2@ double * @ARG2@ begin +@TYPE3@ double * @ARG3@ end +@PURPOSE@ Get the range in double +@DESC@ +Returns in <parameter>begin</parameter> and <parameter>end</parameter> as the range. +@SINCE@ 2.11.91 diff --git a/fontconfig/fontconfig/fontconfig.h b/fontconfig/fontconfig/fontconfig.h index e5b09591b..afc917c6b 100644 --- a/fontconfig/fontconfig/fontconfig.h +++ b/fontconfig/fontconfig/fontconfig.h @@ -908,6 +908,9 @@ FcRangeDestroy (FcRange *range); FcPublic FcRange * FcRangeCopy (const FcRange *r); +FcPublic FcBool +FcRangeGetDouble(const FcRange *range, double *begin, double *end); + /* fcweight.c */ FcPublic int diff --git a/fontconfig/src/fcrange.c b/fontconfig/src/fcrange.c index 39eafd82d..37cf06755 100644 --- a/fontconfig/src/fcrange.c +++ b/fontconfig/src/fcrange.c @@ -76,6 +76,29 @@ FcRangeCopy (const FcRange *range) return ret; } +FcBool +FcRangeGetDouble(const FcRange *range, double *begin, double *end) +{ + if (!range) + return FcFalse; + if (range->is_double) + { + if (begin) + *begin = range->u.d.begin; + if (end) + *end = range->u.d.end; + } + else + { + if (begin) + *begin = (double)range->u.i.begin; + if (end) + *end = (double)range->u.i.end; + } + + return FcTrue; +} + FcRange FcRangeCanonicalize (const FcRange *range) { |