blob: 248c168cca5bf141283f6725b76a5eab64c60835 [file] [log] [blame]
//========================================================================
//
// UTF.h
//
// This file is licensed under the GPLv2 or later
//
// Copyright (C) 2012 Adrian Johnson <ajohnson@redneon.com>
//
//========================================================================
#ifndef UTF_H
#define UTF_H
#ifdef USE_GCC_PRAGMAS
#pragma implementation
#endif
#include "goo/GooString.h"
#include "CharTypes.h"
// Convert a UTF-16 string to a UCS-4
// utf16 - utf16 bytes
// utf16_len - number of UTF-16 characters
// ucs4_out - if not NULL, allocates and returns UCS-4 string. Free with gfree.
// returns number of UCS-4 characters
int UTF16toUCS4(const Unicode *utf16, int utf16_len, Unicode **ucs4_out);
// Convert a PDF Text String to UCS-4
// s - PDF text string
// ucs4 - if the number of UCS-4 characters is > 0, allocates and
// returns UCS-4 string. Free with gfree.
// returns number of UCS-4 characters
int TextStringToUCS4(GooString *textStr, Unicode **ucs4);
// check if UCS-4 character is valid
bool UnicodeIsValid(Unicode ucs4);
#endif