diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2016-10-11 17:11:38 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2016-10-11 17:11:38 +0200 |
commit | 12ec109de01c31605cf412612903190e469be8ff (patch) | |
tree | feabf69adf98d90c04c919b83796b4cf2510c8ac /filter | |
parent | 583ac140dcf6f11b21bc9c52516ba2bbcbd37a95 (diff) |
Comment about state of non-BMP Unicode chars in RTF
Change-Id: I90051425c52f42f69cd61436979a50b875cca710
Diffstat (limited to 'filter')
-rw-r--r-- | filter/source/msfilter/rtfutil.cxx | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/filter/source/msfilter/rtfutil.cxx b/filter/source/msfilter/rtfutil.cxx index e5c07e364e33..32e04fa81877 100644 --- a/filter/source/msfilter/rtfutil.cxx +++ b/filter/source/msfilter/rtfutil.cxx @@ -37,6 +37,14 @@ OString OutHex(sal_uLong nHex, sal_uInt8 nLen) return OString(pStr); } +// Ideally, this function should work on (sal_uInt32) Unicode scalar values +// instead of (sal_Unicode) UTF-16 code units. However, at least "Rich Text +// Format (RTF) Specification Version 1.9.1" available at +// <https://www.microsoft.com/en-us/download/details.aspx?id=10725> does not +// look like it allows non-BMP Unicode characters >= 0x10000 in the \uN notation +// (it only talks about "Unicode character", but then explains how values of N +// greater than 32767 will be expressed as negative signed 16-bit numbers, so +// that smells like \uN is limited to BMP). OString OutChar(sal_Unicode c, int* pUCMode, rtl_TextEncoding eDestEnc, bool* pSuccess, bool bUnicode) { if (pSuccess) |