1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-Bopomofo.js

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Bopomofo.js

Библиотека для перевода китайских иероглифов в пиньинь для использования в H5

  1. Реализация перевода китайских иероглифов в пиньинь
  2. Реализация перевода китайских слов в пиньинь
  3. Реализация перевода китайских предложений в пиньинь, частично решает проблему многозначных иероглифов

Пиньинь поисковая система

Официальный онлайн поиск: pinyin.rnkrsoft.com, если вы обнаружите, что слова не правильно интерпретируются, вы можете здесь поддержать словарь, обратившись к нам.

Принцип

  1. Получение текущего unicode значения китайского иероглифа, если оно находится в диапазоне [19968, 40869] китайских символов, выполнение шага 2, в противном случае вывод без изменений (может быть символом, цифрой, английской буквой или другим языком)
  2. Проверка текущего иероглифа на наличие в словаре многозначных иероглифов, если он существует, возвращение пиньинь и последовательности иероглифов для этого иероглифа, последовательное сравнение текущего предложения с этим словарем, если совпадение найдено, то это и есть правильное произношение. Если совпадение не найдено, переход к шагу 3
  3. Поддержание словаря, отображающего соответствие между пиньинем и иероглифами, последовательное сравнение текущего иероглифа с последовательностью иероглифов в словаре, если совпадение найдено, то возвращение соответствующего пиньиня.## API
/**
 * Преобразование китайского предложения в пиньинь, поддерживает звуковые символы с тонами, цифровые тоны в конце, без тонов, три формата
 * @param {Object} words Предложение
 * @param {Object} toneType Формат пиньиня 0-звуки с тонами, 1-цифры в конце, 2-без тонов, значение по умолчанию 0
 * @param {Object} upper Заглавные буквы, значение по умолчанию false (строчные)
 * @param {Object} cap Заглавная буква в начале, действует при upper=false, значение по умолчанию false (строчные)
 * @param {Object} split Разделитель, значение по умолчанию один пробел
 * @return Пиньинь
 */
function pinyin(words, toneType, upper, cap, split) {
    // вывод пиньиня
}

Примеры:

var v1 = pinyin('中国人!', 0, false, false, ' ');
console.log(v1); // вывод в консоль zhōng guó rén!
var v2 = pinyin('患难与共的兄弟!!', 1, false, false, ' ');
console.log(v2); // вывод в консоль huan4 nan4 yu3 gong4 de0 xiong1 di4!!
var v3 = pinyin('this is a pinyin library!这是一个汉语拼音库!!', 2, false, false, ' ');
console.log(v3); // вывод в консоль this is a pinyin library! zhe shi yi ge han yu pin yin ku!!
```## Bopomofo-jquery.js
Интеграция Bopomofo.js в jQuery, вызов функции перевода китайских слов в пиньинь через `$.bopomofo.pinyin();` с помощью jQuery создается объект bopomofo, и вызывается функция pinyin(). ```js
	var bopomofo = $.bopomofo();
{
	var v1 = bopomofo.pinyin('中国人!  ');
	console.log(v1);
	assertEquals('zhōng guó rén!  ', v1);
}
{
	var v1 = bopomofo.pinyin('中国人!  ', 0);
	console.log(v1);
	assertEquals('zhōng guó rén!  ', v1);
}
{
	var v1 = bopomofo.pinyin('中国人!  ', 0, false);
	console.log(v1);
	assertEquals('zhōng guó rén!  ', v1);
}
{
	var v1 = bopomofo.pinyin('中国人!  ', 0, true);
	console.log(v1);
	assertEquals('ZHŌNG GUÓ RÉN!  ', v1);
}
{
	var v1 = bopomofo.pinyin('中国人!  ', 0, false, false);
	console.log(v1);
	assertEquals('zhōng guó rén!  ', v1);
}
{
	var v1 = bopomofo.pinyin('中国人!  ', 0, true, false);
	console.log(v1);
	assertEquals('ZHŌNG GUÓ RÉN!  ', v1);
}
{
	var v1 = bopomofo.pinyin('中国人!  ', 0, true, true);
	console.log(v1);
	assertEquals('ZHŌNG,GUÓ,RÉN!  ', v1);
}
{
	var v1 = bopomofo.pinyin('中国人!  ', 0, false, true);
	console.log(v1);
	assertEquals('Zhōng Guó Rén!  ', v1);
}
{
	var v1 = bopomofo.pinyin('中国人!  ', 0, false, false, ',');
	console.log(v1);
	assertEquals('zhōng,guó,rén!  ', v1);
}
{
	var v1 = bopomofo.pinyin('中国人!  ', 0, false, true, ',');
	console.log(v1);
	assertEquals('Zhōng,Guó,Rén!  ', v1);
}
{
	var v1 = bopomofo.pinyin('中国人!  ', 0, true, true, ',');
	console.log(v1);
	assertEquals('ZHŌNG,GUÓ,RÉN!  ', v1);
}
{
	var v1 = bopomofo.pinyin('患难与共的兄弟!  !  ');
	console.log(v1);
	assertEquals('huàn nàn yǔ gòng de xiōng dì!  !  ', v1);
}
{
	var v1 = bopomofo.pinyin('患难与共的兄弟!  !  ', 1);
	console.log(v1);
	assertEquals('huan4 nan4 yu3 gong4 de0 xiong1 di4!  !  ', v1);
}
{
	var v1 = bopomofo.pinyin('患难与共的兄弟!  !  ', 1, false);
	console.log(v1);
	assertEquals('huan4 nan4 yu3 gong4 de0 xiong1 di4!  !  ', v1);
}
{
	var v1 = bopomofo.pinyin('患难与共的兄弟!  !  ', 1, false, false);
	console.log(v1);
	assertEquals('huan4 nan4 yu3 gong4 de0 xiong1 di4!  !  ', v1);
}
{
	var v1 = bopomofo.```markdown
	var v1 = bopomofo.pinyin('患难与共的兄弟! !  ', 1, false, false, ',');
	console.log(v1);
	assertEquals('huan4,nan4,yu3,gong4,de0,xiong1,di4! !  ', v1);
}
{
	var v1 = bopomofo.pinyin('this is a pinyin library! 这是一个汉语拼音库! !  ', 1);
	console.log(v1);
	assertEquals('this is a pinyin library! zhè shì yī gè hàn yǔ pīn yīn kù! !  ', v1);
}
{
	var v1 = bopomofo.pinyin('this is a pinyin library! 这是一个汉语拼音库! !  ', 2);
	console.log(v1);
	assertEquals('this is a pinyin library! zhe shi yi ge han yu pin yin ku! !  ', v1);
}
{
	var v1 = bopomofo.pinyin('this is a pinyin library! 这是一个汉语拼音库! !  ', 2, false);
	console.log(v1);
	assertEquals('this is a pinyin library! zhe shi yi ge han yu pin yin ku! !  ', v1);
}
{
	var v1 = bopomofo.pinyin('this is a pinyin library! 这是一个汉语拼音库! !  ', 2, false, false);
	console.log(v1);
	assertEquals('this is a pinyin library! zhe shi yi ge han yu pin yin ku! !  ', v1);
}
{
	var v1 = bopomofo.pinyin('this is a pinyin library! 这是一个汉语拼音库! !  ', 2, false, false, ',');
	console.log(v1);
	assertEquals('this is a pinyin library! ,zhe,shi,yi,ge,han,yu,pin,yin,ku! !  ', v1);
}

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Bopomofo.js — это библиотека для конвертации иероглифов в пиньинь, написанная на чистом JavaScript. Она позволяет переводить иероглифы в пиньинь, китайские слова в пиньинь, а также китайские предложения в пиньинь. В определенной степени решает проблему многозначных иероглифов. Принцип работы: получение текущего иероглифа по его Unicode-коду. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/mirrors-Bopomofo.js.git
git@api.gitlife.ru:oschina-mirror/mirrors-Bopomofo.js.git
oschina-mirror
mirrors-Bopomofo.js
mirrors-Bopomofo.js
master