2

我有一个朋友一直在使用 jQuery Keypad 插件。他现在需要几个字符的上标(和/或下标)。有谁知道如何在 UTF-8 中制作或查找(复制/粘贴)以下上标字符?

需要的上标字符: nd th st rd [ ] ( )

nd, th, st, rd 用于诸如 22nd, 7th, 1st, 3rd 之类的东西(但有上标)

[ ] ( ) 也将是必需的。

jQuery Keypad 插件目前正在与一些额外的 BBCode 功能一起使用。

http://keith-wood.name/keypad.html

var custom_keypad_bbcode = [
'⁰|¹|²|³|⁴|⁵|⁶|⁷|⁸|⁹|¢|£|' + $.keypad.QTAT, 
'‘|’|“|”|–|—|©|®|™|¼|½|¾|' + $.keypad.ITALIC, 
'à|á|â|ã|ä|å|æ|ç|è|é|ê|ë|' + $.keypad.QUOTE, 
'ì|í|í|î|ï|ñ|ò|ó|ô|õ|ö|ø|' + $.keypad.ULINE, 
$.keypad.SHIFT + '|ð|þ|ù|ú|û|ü|ý|ÿ|' + $.keypad.CLOSE + '|' + $.keypad.BOLD, 

];

我正在考虑使用 BBCode,但我更愿意用 UTF-8 写出字符。我找到了以下列表,但它不包括上标“t”或“h”。

http://www.fileformat.info/info/unicode/block/superscripts_and_subscripts/list.htm

有谁知道如何在 UTF-8 中制作或查找(复制/粘贴)所需的上标字符?

4

2 回答 2

1

某些字符的上标和下标在 U+2070 – U+209C Unicode 范围内:

  • 上标:0456789+-=()in

  • 下标:0123456789+-=aeoxhklmnpst

还有:

  • jU+2C7C处的下标

  • 下标iruv在 U+1D62–U+1D65

  • 123你已经找到的上标

和所谓的“语音修饰字母”(在大多数情况下看起来像上标):

  • abdegkmoptuv在 U+1D43–U+1D5B

  • c在 U+1D9C

  • f在 U+1DA0

  • z在 U+1DBB

  • hjrwy在 U+02B0–U+02B8

  • lsx在 U+02E1–U+02E3。

因此,假设您有一种支持所有这些字符的字体并且修饰符字母看起来类似于上标字母,您有以下内容:

  • 上标:所有数字、所有小写 ASCII 字母和一些其他符号

  • 下标:所有数字、字母aehijklmnprstuvx和一些其他符号

于 2014-02-15T00:15:09.963 回答
0

这是我最终在 PHP 中提出的。然而,“nd”的基线不在一个级别。

// Testing: Superscript characters needed: nd th st rd [ ] ( )

// nd ⁿᵈ
echo "nd: ".html_entity_decode('&#x207F;', ENT_COMPAT, 'UTF-8').html_entity_decode('&#x1D48;', ENT_COMPAT, 'UTF-8')."<br>";
// th ᵗʰ (t-x1D57) ᵗʰ (H-x2b0)
echo "th: ".html_entity_decode('&#x1D57;', ENT_COMPAT, 'UTF-8').html_entity_decode('&#x02b0;', ENT_COMPAT, 'UTF-8')."<br>";
// st ˢᵗ
echo "st: ".html_entity_decode('&#X02E2;', ENT_COMPAT, 'UTF-8').html_entity_decode('&#x1D57;', ENT_COMPAT, 'UTF-8')."<br>";
// rd ʳᵈ
echo "rd: ".html_entity_decode('&#X02B3;', ENT_COMPAT, 'UTF-8').html_entity_decode('&#x1D48;', ENT_COMPAT, 'UTF-8')."<br>";

echo "<br><br><br>";

echo "n-".html_entity_decode('&#x207F;', ENT_COMPAT, 'UTF-8');
echo "d-".html_entity_decode('&#x1D48;', ENT_COMPAT, 'UTF-8');
echo "h-".html_entity_decode('&#X02B0;', ENT_COMPAT, 'UTF-8');
echo "r-".html_entity_decode('&#X02B3;', ENT_COMPAT, 'UTF-8');
echo "s-".html_entity_decode('&#X02E2;', ENT_COMPAT, 'UTF-8');
echo "t-".html_entity_decode('&#x1D57;', ENT_COMPAT, 'UTF-8');
于 2014-02-17T17:29:37.513 回答