<<< 1 ... 7 8 9 ... 12 >>> Переход на страницу  +  i   🔎
71
2025.02.13бкрс Это скорее всего от браузера/системы зависит. Максимум, какое-то переключение текста или картинки.

Не понятен смысл pdf/печати, даже если кто-то распечатывает, он это как-то сам делает, а не из браузера. Лучше дать возможность удобно скопировать, например, в текстовый файл с хорошим форматированием (обычным не табличным).

В PDF иногда очень удобно сохранить выборку сделанную результатами поиска или заметками, чтобы лишний раз не обращаться к html.

Хорошая мысль, можно сохранять форматированный текст (нужно подумать над форматированием), в javascript сейчас есть функция чтобы сразу файл сохранить минуя неудобную копипасту
2025.02.13
ЛС Ответить
72
2025.02.12бкрс А есть ли смысл в этой библиотеке? Там же просто прогнать текст через пару регулярок.

Вот мой скрипт на питоне:
Код:
text = text.replace(' /', ' [m1]')
text = text.replace('/', '[/m][m1]')
text = text.replace('[m1]\n', '\n')

text = re.sub(r'^([^ ]+?) ([^ ]+?) \[(.+?)\] ', r'\2\t\3\t', text, flags=re.MULTILINE)
text = re.sub(r'([^一-鶴])([一-鶴]+)\|([一-鶴]+)', r'\1\3', text, flags=re.MULTILINE)

py = {'a1':'ā','a2':'á','a3':'ǎ','a4':'à','a5':'a','ai':'ai','ai1':'āi','ai2':'ái','ai3':'ǎi','ai4':'ài','an1':'ān','an2':'án','an3':'ǎn','an4':'àn','ang1':'āng','ang2':'áng','ang3':'ǎng','ang4':'àng','ao1':'āo','ao2':'áo','ao3':'ǎo','ao4':'ào','ei1':'ēi','ei2':'éi','ei3':'ěi','ei4':'èi','e1':'ē','e2':'é','e3':'ě','e4':'è','en1':'ēn','en2':'én','en3':'ěn','en4':'èn','eng1':'ēng','eng2':'éng','eng3':'ěng','eng4':'èng','o1':'ō','o2':'ó','o3':'ǒ','o4':'ò','ou':'ou','ou1':'ōu','ou2':'óu','ou3':'ǒu','ou4':'òu','i1':'ī','i2':'í','i3':'ǐ','i4':'ì','i5':'i','in1':'īn','in2':'ín','in3':'ǐn','in4':'ìn','ing1':'īng','ing2':'íng','ing3':'ǐng','ing4':'ìng','ian1':'iān','ian2':'ián','ian3':'iǎn','ian4':'iàn','iao1':'iāo','iao2':'iáo','iao3':'iǎo','iao4':'iào','ie1':'iē','ie2':'ié','ie3':'iě','ie4':'iè','ei4':'èi','u1':'ū','u2':'ú','u3':'ǔ','u4':'ù','er1':'ēr','er2':'ér','er3':'ěr','er4':'èr','u:1':'ǖ','u:2':'ǘ','u:3':'ǚ','u:4':'ǜ','ong1':'ōng','ong2':'óng','ong3':'ǒng','ong4':'òng','un1':'ūn','un2':'ún','un3':'ǔn','un4':'ùn','n5':'n','g5':'g','o5':'o','u5':'u','r5':'r','e5':'e'}
for i, j in py.items():
       text = text.replace(i, j)
(一-鶴 это прообраз \p{Han})
Тут традиционный удаляется и всё в строку.

Правильно я понял - Py это обычный массив, ключ для поиска  значение для замены найденного, а ищем пиньинь в нутрях только в скобках поcле han: han[ ] (или  везде) ?
2025.02.14
ЛС Ответить
73
2025.02.14dsx Правильно я понял - Py это обычный массив, ключ для поиска  значение для замены найденного, а ищем пиньинь в нутрях только в скобках поcле han: han[ ] (или  везде) ?

Да, примитивная глобальная замена по всему тексту.
py - pinyin

Только сейчас заметил, что в цедикте регистр у пиньиня, нужно добавить с А (и может c Е)
Цитата:'A1':'Ā','A2':'Á','A3':'Ǎ','A4':'À','A5':'A','Ai':'Ai','Ai1':'Āi','Ai2':'Ái','Ai3':'Ǎi','Ai4':'Ài','An1':'Ān','An2':'Án','An3':'Ǎn','An4':'Àn','Ang1':'Āng','Ang2':'Áng','Ang3':'Ǎng','Ang4':'Àng','Ao1':'Āo','Ao2':'Áo','Ao3':'Ǎo','Ao4':'Ào'
2025.02.14
ЛС Ответить
74
2025.02.13dsx Ещё такая проблема, может кто-то знает как её решить - в html страницы для печати/сохранения в PDF режутся прямо по строкам, разделя одну строку по разным страницам :
[Изображение: attachment.php?aid=17534]

Дело было в css display:inline-block. Изменил и pdf теперь нормальный.

В следующей версии будет исправлено много. Так-же там: можно сохранить форматированный текст (html), улучшенный и ускоренный в 9 раз парсер cc-cedict, добавочное содержимое в StarDict словарях (по аналогии с существующим для MDict) и надеюсь доделать внутреннее сжатие для MDict словарей (делаю неспешно  35 )
2025.02.16
ЛС Ответить
75
бкрс, парсер питоновский перенести не смог, исправил convertToPinyinDiacritic и только эту функцию из той библиотеки оставил. Парсит хорошо, пропускает только кантонский ютпхин.

Остальное всё, как выше написал ☝️, есть. MDict оснастил внутренним сжатием этого формата; на больших словарях, как 大БКРС+БРуКС+Примеры, экономия на диске больше 200Мб(!). Единственный минус - это плохая сжимаемость (в 7z, zip) уже сжатого внутри словаря. Внутреннее сжатие можно отключить в index.php (по умолчанию включено).


.zip mcx_v8.zip (Размер: 260.53 Кб)
2025.02.16
ЛС Ответить
76
[attachment=17591]
- добавлены отступы в StarDict и MDict,
- добавлено в PHP коде сжатие Dictzip для DSL и StarDict,
- в StarDict изменена разметка с XDXF на HTML,
- улучшено деление DSL,
- в HTML словарях можно сохранить результаты в HTML таблицу с ячейками с атрибутом contentEditable (проще отредактировать и дальше сохранить в любой формат),
- исправления в cc-cedict  и dsl адаптерах (экранирование квадратных скобок и отображение ударных гласных).

Если нашли ошибки просьба писать в эту тему.
бкрс, файл можно на первый пост, вместо старого.


Новые опции в index.php :
Код:
//================================================
//           НАСТРОЙКИ | OPTIONS
//------------------------------------------------

//DSL
 $dsl_numparts = 3;              // Деление DSL на части, количество частей, число >= 1.
 $dsl_parbalance = 1;            // 1 - уравновесить части по размеру; 2 - уровнять части по количеству слов.
 $dsl_threshold = 200*1024*1024; // Порог для осуществления деления, - размер исходн. файла(ов) в байтах. Деление будет происходить только если размер исходника больше этого значения.
 $dsl_compress = 6;              // Сжатие DictZIP (.dsl.dz). Число от 1 до 9, определяющее уровень сжатия. 0 - без сжатия. Для компиляции в Lingvo установить 0.
 $dsl_include = true;            // Использование директивы #INCLUDE при делении на части. true - использовать, false - не использовать. (Используется для компиляции в Lingvo. Другие программы могут игнорировать директиву.)
 $dsl_cn_langindex = 'Chinese';  // English
 $dsl_ru_langindex = 'Russian';
 $dsl_cn_langcontent = 'Chinese';
 $dsl_ru_langcontent = 'Russian';

//MDict
 $md_compress = 6;    // Внутреннее сжатие. Число от 1 до 9, определяющее уровень сжатия. 0 - без сжатия.
 $md_indent = 20;     // Отступы в словарных статьях, пиксели. 0 - без отступов.
 $md_addcontent = ''; // Добавочное содержимое, помещается в конце каждой страницы. Допустимо использование HTML, CSS и JavaScript.

//StarDict
 $sd_compress = 6;    // Сжатие GZIP (.idx.gz) и DictZIP (.dict.dz). Число от 1 до 9, определяющее уровень сжатия. 0 - без сжатия.
 $sd_indent = 20;     // Отступы в словарных статьях, пиксели. 0 - без отступов.
 $sd_addcontent = ''; // Добавочное содержимое, помещается в конце каждой страницы. Допустимо использование HTML, CSS и JavaScript*. (*Некоторые программы-просмотрщики JavaScript не выполняют.)

//ZIP
 $option_zip = false;   // Создание сжатого ZIP-каталога. true - включить, false - обычный каталог.
 $zip_password = '';    // Пароль для ZIP-каталога (PHP >= 7.2). Пустая строка '' - без пароля.
 $zip_srccatdel = true; // Удаление исходного каталога после получения ZIP-каталога. true - удалить, false - не удалять.

//Тест
 $tstnums = 1000; // Количество слов в базах при тестовой конвертации.


//================================================


Скриншоты из GoldenDict, ColorDict и MDict :




mcx_v10 — PHP конвертер словарных баз - DSL, 大БКРС и CC-CEDICT в StarDict, MDict и HTML.
dictz_v2 — браузерный dictzip компрессор для словарей (DSL, StarDict и др.)
2025.02.26
ЛС Ответить
77
mcx, а что со старым акком?

Отличные опции!

Цитата:$dsl_parbalance = 1; // 1 - уравновесить части по размеру; 2 - уровнять части по количеству слов.
Я это в ручную подгонял 1


В марте новую версию буду делать, затестю на сколько лучше моего старого способа, там у меня по сути пол дня уходило, а то и день с учётом моральных подготовок и чаяпитей, только на один dsl.
2025.02.27
ЛС Ответить
78
2025.02.27бкрс mcx, а что со старым акком?

У старого акка старая аура) Решил - пусть будет новый
mcx_v10 — PHP конвертер словарных баз - DSL, 大БКРС и CC-CEDICT в StarDict, MDict и HTML.
dictz_v2 — браузерный dictzip компрессор для словарей (DSL, StarDict и др.)
2025.02.27
ЛС Ответить
79
2025.02.10dsx ...кстати конвертацию из DSL ещё нужно обкатывать на разных словарях и выявлять то что можно исправить/улучшить, у меня из испытуемых DSL только En-Ru-Apresyan.dsl и Ru-En-Smirnitsky.dsl.

Kак выяснилось не всё учтено при конвертации из DSL, встретился экземпляр на котором адаптер ошибается
mcx_v10 — PHP конвертер словарных баз - DSL, 大БКРС и CC-CEDICT в StarDict, MDict и HTML.
dictz_v2 — браузерный dictzip компрессор для словарей (DSL, StarDict и др.)
2025.02.28
ЛС Ответить
80
бкрс, рефы в первом скриншоте стоит-ли расположить вертикально в колонку?
mcx_v10 — PHP конвертер словарных баз - DSL, 大БКРС и CC-CEDICT в StarDict, MDict и HTML.
dictz_v2 — браузерный dictzip компрессор для словарей (DSL, StarDict и др.)
2025.03.01
ЛС Ответить
<<< 1 ... 7 8 9 ... 12 >>> Переход на страницу  +  i   🔎