Сжатие открытого текста в JavaScript? - PullRequest
1 голос
/ 22 декабря 2010

У меня есть простое веб-приложение, похожее на блокнот, которое я делаю для развлечения.Когда вы сохраняете документ, содержимое

Скажем так, для дерьма и хихиканья, что нам нужно сжать содержимое

Существуют ли библиотеки JavaScript для этого?Насколько хорошо сжимается простой текст?

Ответы [ 3 ]

2 голосов
/ 22 декабря 2010

Простое 7-битное сжатие может работать, если вы используете только 7-битный набор символов ascii. Поиск в Google дал это: http://www.iamcal.com/png-store/

Или вы можете использовать LZW http://rosettacode.org/wiki/LZW_compression#JavaScript

Насколько степень сжатия; согласно д-р. Доббс

Довольно сложно охарактеризовать результаты любого метода сжатия данных. Достигнутый уровень сжатия сильно варьируется в зависимости от нескольких факторов. Сжатие LZW превосходно, когда сталкивается с потоками данных, которые имеют любой тип повторяющихся строк. Из-за этого это очень хорошо работает при сжатии английского текста. Можно ожидать уровня сжатия 50% или выше.

0 голосов
/ 22 декабря 2010

Сначала запустите сжатие LZW, это даст сжатые данные в двоичном формате. Затем выполните кодировку base-64 для сжатых двоичных данных. Это даст текстовую версию сжатых данных, которые вы можете сохранить в своей базе данных.

Чтобы восстановить содержимое, выполните декодирование base-64. Затем декомпрессия LZW.

Существуют библиотеки Java для обеих целей. Просто найдите «LZW-сжатие Java» и «Java-кодирование base-64».

0 голосов
/ 22 декабря 2010

Ну, вы не можете использовать сжатие gzip. Смотрите здесь: Почему браузер не может отправить запрос gzip?

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

Я нашел это с помощью поиска Google: http://rumkin.com/tools/compression/compress_huff.php Это в конечном итоге приведет к меньшему набору текста, если текст достаточно большой. Это на самом деле раздувает текст, если текст короткий.

Я также нашел это: http://www.sean.co.uk/a/webdesign/javascript_string_compression.shtm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...