Author Topic: Рендеринг китайских иероглифов  (Read 4972 times)

0 Members and 1 Guest are viewing this topic.

Offline Alone Coder

  • Posts: 23124
  • Gender: Male
    • Орфовики
Как я понял, тексты на пиньине среди китайцев спросом не пользуются.

Какие есть решения для рендеринга китайских иероглифов в растр (допустим, 16x16 пикселей, 1 бит на пиксель) при ограниченном количестве памяти (допустим, 64 килобайта) и ограниченной скорости процессора?
Вопрос делится на несколько:
1. Какой набор иероглифов полностью достаточен для написания в принципе произвольных текстов?
2. Что делать с остальными иероглифами? Как принято поступать в таких случаях?
3. Реально ли сэкономить за счёт разделения иероглифов на элементы?
4. Реально ли сэкономить за счёт более мелких рисунков? (Мельче 12x12 не видел.)


Уточню: кодировка текста может быть произвольной, как удобнее для экономии памяти.

Offline Imp

  • Posts: 4538
  • Gender: Male
Как я понял, тексты на пиньине среди китайцев спросом не пользуются.

Какие есть решения для рендеринга китайских иероглифов в растр (допустим, 16x16 пикселей, 1 бит на пиксель) при ограниченном количестве памяти (допустим, 64 килобайта) и ограниченной скорости процессора?
Вопрос делится на несколько:
1. Какой набор иероглифов полностью достаточен для написания в принципе произвольных текстов?
2. Что делать с остальными иероглифами? Как принято поступать в таких случаях?
3. Реально ли сэкономить за счёт разделения иероглифов на элементы?
4. Реально ли сэкономить за счёт более мелких рисунков? (Мельче 12x12 не видел.)


Уточню: кодировка текста может быть произвольной, как удобнее для экономии памяти.
нужно примерно 5000 знаков для покрытия подавляющего большинства современных текстов на китайском, в большинстве используемых сейчас кодировок знаков даже несколько больше, от 6 до 7 с половиной тысяч (в кодировке для упрощённых и традиционных знаков соответственно).

Если попадается знак, которого нет в кодировке его заменяют изображением, но это делается крайне редко, потому что такие знаки встречаются только в старых текстах

Я не знаю, что такое растр и вообще не уверен, что вы именно это хотели услышать  :)
海賊王に俺はなる

Online Hellerick

  • Posts: 24966
  • Gender: Male
Раньше иногда практиковалось разбиение иероглифов пополам, и кодирование каждой половины, например в виде ячейке 8x16, отдельно. Так экономилась куча позиций. Но это далеко не панацея.

Offline Alone Coder

  • Posts: 23124
  • Gender: Male
    • Орфовики
нужно примерно 5000 знаков для покрытия подавляющего большинства современных текстов на китайском, в большинстве используемых сейчас кодировок знаков даже несколько больше, от 6 до 7 с половиной тысяч (в кодировке для упрощённых и традиционных знаков соответственно).
А как найти эти списки?

5000 глифов 16x16 - это уже 160K графики...

Offline Python

  • Posts: 33276
  • Gender: Male
  • Aluarium agent
Порядок кодовых позиций иероглифов в юникоде — что он собой символизирует? Допустим, латинские буквы основного набора идут в алфавитном порядке (отдельными блоками для верхнего и нижнего регистра), то же касается букв русской кириллицы, греческого и пр.; цифры идут в порядке возрастания; символы катаканы и хираганы упорядочены по согласной и гласной; символы согласных в деванагари сгруппированы по фонетическим признакам. Какую информацию об иероглифе можно получить, зная лишь его код?
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

Offline Toman

  • Posts: 8055
  • Gender: Male
5000 глифов 16x16 - это уже 160K графики...
Интересно, насколько оно сжимается... А сырой векторный вид при таком разрешении будет ещё жирнее растра, увы (примерно раза в полтора, наверное).
Во́зле до́ма хо́лм с куля́ми - вы́йду на́ холм, ку́ль поставлю.

Offline Joris

  • Posts: 14659
  • ở Sao Hỏa
    • Грамматика языка суахили
Порядок кодовых позиций иероглифов в юникоде — что он собой символизирует?
По 214 ключам (у них у каждого есть порядковые номера), а в каждом ключе по количеству черт по возрастанию
yóó' aninááh


Offline Alone Coder

  • Posts: 23124
  • Gender: Male
    • Орфовики
Самые-самые частые иероглифы тут http://www.commonchinesecharacters.com/Lists/MostCommon2500ChineseCharacters
сильно отличаются от самых-самых частых тут: http://www.routledge.com/books/details/9780415455862/
Это очень странно.

Пока вырисовывается такой вариант: 2500 иероглифов иметь в шрифте (98% текста), остальные 2% текста картинками. При этом будет 80K графики и в среднем 2.6 байта на символ. Пока ещё не влезает в 64К.

Для сравнения, в 64K влезет текст из 2000 иероглифов, если весь текст хранить картинкой. Это тоже слишком мало.

Интересно, насколько оно сжимается...
Надо ещё и разжимать на лету...

Раньше иногда практиковалось разбиение иероглифов пополам, и кодирование каждой половины, например в виде ячейке 8x16, отдельно. Так экономилась куча позиций. Но это далеко не панацея.
Интересно, насколько помогает разбиение символов на левую и правую половины? Может, надо разбивать не прямо посередине, а одна часть перекрывает другую?

Online Hellerick

  • Posts: 24966
  • Gender: Male
Вы сейчас пытаетесь вывести ZX Spectrum на китайский рынок?

Offline Imp

  • Posts: 4538
  • Gender: Male
Пока вырисовывается такой вариант: 2500 иероглифов иметь в шрифте (98% текста), остальные 2% текста картинками.
я бы сильно рекомендовал как минимум 3500 знаков в шрифте
海賊王に俺はなる

Offline Bhudh

  • Posts: 49901
  • Gender: Male
  • aka 蝎
    • Сайты по языкознанию
Интересно, насколько помогает разбиение символов на левую и правую половины? Может, надо разбивать не прямо посередине, а одна часть перекрывает другую?
Если есть возможность, можно вообще сделать отдельные элементы и соединять их в иероглиф. Прямо по видам разбиения: .
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Online Hellerick

  • Posts: 24966
  • Gender: Male
Ну да, всё уже придумано до нас. По-хорошему, надо максимально полно Cangjie воспроизводить.

Offline Тайльнемер

  • Posts: 12407
  • Σοι υν βυρρο. Ix bin æn ézl
Если есть возможность, можно вообще сделать отдельные элементы и соединять их в иероглиф. Прямо по видам разбиения: .
А эти вот разбиения применяются рекурсивно или однократно к элементарным символам?
И сколько всего элементарных символов?

Online Hellerick

  • Posts: 24966
  • Gender: Male
鬱 (radical 192 鬯+19, 29 strokes, cangjie input 木木月山竹 (DDBUH), four-corner 44722, composition ⿳⿲木缶木冖⿰鬯彡)

Offline Тайльнемер

  • Posts: 12407
  • Σοι υν βυρρο. Ix bin æn ézl
А, то есть, рекурсивно.
А вот эта жуть «鬯» — это элементарный символ? Его нельзя разложить?

Offline Imp

  • Posts: 4538
  • Gender: Male
А, то есть, рекурсивно.
А вот эта жуть «鬯» — это элементарный символ? Его нельзя разложить?
можно, как минимум на два, по середине, но можно даже на четыре и даже на пять, при желании
海賊王に俺はなる

Лучше объясните, что значит в данном случае рекурсивно, а то вот из этого мало что понятно:
А эти вот разбиения применяются рекурсивно или однократно к элементарным символам?
海賊王に俺はなる

Offline Тайльнемер

  • Posts: 12407
  • Σοι υν βυρρο. Ix bin æn ézl
Лучше объясните, что значит в данном случае рекурсивно, а то вот из этого мало что понятно:
Под «рекурсивно» я имел в виду, что элементами разбиения могут быть не только элементарные символы, но и разбиения.

можно, как минимум на два, по середине, но можно даже на четыре и даже на пять, при желании
А почему тогда в примере выше его не разбили?

Online Hellerick

  • Posts: 24966
  • Gender: Male
Наверное, потому что логически это законченный элемент. Дальнейшее деление возможно только по формально-графическому принципу.

Quote
鬯 (radical 192 鬯+0, 10 strokes, cangjie input 山戈心 (UIP), four-corner 22711, composition ⿱𠚍匕)

Quote
𠚍 (radical 17 凵+6, 8 strokes, composition ⿶凵𠂭)

Offline Тайльнемер

  • Posts: 12407
  • Σοι υν βυρρο. Ix bin æn ézl
То есть, есть два принципа деления: логический и формально-графический?
Для проблемы, заявленной в первом сообщении темы, думаю, как раз формально-графический подойдёт.
鬱  =  ⿳⿲木缶木冖⿰⿱⿶凵𠂭匕彡
И сколько всего элементарных символов надо для представления любого иероглифа в таком виде?
Один и тот же символ в разных позициях отличается только масштабами по осям или может отличаться ещё чем-то?

Online Hellerick

  • Posts: 24966
  • Gender: Male
Однозначный ответ найти будет трудно.

В любом случае сначала вам нужно составить список рендеруемых иероглифов. Это не так просто: в отличие от японцев китайцы не склонны составлять ограниченные списки своих иероглифов.
А уже потом надо выуживать базу данных по декомпозиции данных иероглифов. А там и практический ответ на ваш вопрос будет.

Offline Тайльнемер

  • Posts: 12407
  • Σοι υν βυρρο. Ix bin æn ézl
А уже потом надо выуживать базу данных по декомпозиции данных иероглифов.
А в базе есть и логическое деление, и графическое?

Offline Imp

  • Posts: 4538
  • Gender: Male
В любом случае сначала вам нужно составить список рендеруемых иероглифов. Это не так просто: в отличие от японцев китайцы не склонны составлять ограниченные списки своих иероглифов.
и для китайского, как традиционного, так и для упрощённого, такие списки есть. Есть списки самых используемых, есть списки используемых в современной печати, с разбивкой по частотности. Это как раз не проблема
海賊王に俺はなる

Offline Юрий Б.

  • Posts: 647
    • Правда о скептиках 9/11
Реальным режимом развлекаетесь?

 

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Note: this post will not display until it's been approved by a moderator.
Name: Email:
Verification:
Type the letters shown in the picture
Listen to the letters / Request another image
Type the letters shown in the picture:
√49 Напишите ответ строчными буквами:
«Сто одёжек, все без застёжек» — что это?: