Add hb_tag_from_string()

This commit is contained in:
Behdad Esfahbod 2010-05-21 13:43:49 +01:00
parent 4a9a5c0b06
commit 83f34677bc
3 changed files with 45 additions and 0 deletions

View File

@ -14,6 +14,7 @@ HBSOURCES = \
hb-blob-private.h \
hb-buffer.cc \
hb-buffer-private.hh \
hb-common.c \
hb-font.cc \
hb-font-private.hh \
hb-object-private.h \

41
src/hb-common.c Normal file
View File

@ -0,0 +1,41 @@
/*
* Copyright (C) 2010 Red Hat, Inc.
*
* This is part of HarfBuzz, a text shaping library.
*
* Permission is hereby granted, without written agreement and without
* license or royalty fees, to use, copy, modify, and distribute this
* software and its documentation for any purpose, provided that the
* above copyright notice and the following two paragraphs appear in
* all copies of this software.
*
* IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
* DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
* ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
* IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
* DAMAGE.
*
* THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
* BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
* ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
* PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
*
* Red Hat Author(s): Behdad Esfahbod
*/
#include "hb-private.h"
hb_tag_t
hb_tag_from_string (const char *s)
{
char tag[4];
unsigned int i;
for (i = 0; i < 4 && s[i]; i++)
tag[i] = s[i];
for (; i < 4; i++)
tag[i] = ' ';
return HB_TAG_STR (tag);
}

View File

@ -65,6 +65,9 @@ typedef uint32_t hb_tag_t;
((const char *) s)[3]))
#define HB_TAG_NONE HB_TAG(0,0,0,0)
hb_tag_t hb_tag_from_string (const char *s);
typedef uint32_t hb_codepoint_t;
typedef int32_t hb_position_t;
typedef uint32_t hb_mask_t;