Question

construit juste un petit webapp pour afficher un aperçu HTML des documents qui génère URL: s contenant le HTML (et tous les CSS en ligne et Javascript) en base64 données codées. Le problème est, l'URL: s obtenir rapidement un peu de temps. Quelle est la méthode standard "de facto" (de préférence par Javascript ) pour comprimer la première chaîne sans perte de données?

PS; Je l'ai lu Huffman et Lempel-Ziv à l'école il y a quelque temps, et je me souviens vraiment profiter LZW:)

EDIT:

Solution trouvée; semble comme rawStr => utf8Str => lzwStr => base64Str est le chemin à parcourir. Je travaille encore sur la mise en œuvre de compression huffman entre UTF8 et LZW. Problème à ce jour est que trop de caractères deviennent très longtemps quand encodé en base64.

Était-ce utile?

La solution

Consultez cette réponse . Il mentionne des fonctions pour la compression LZW / décompression (via http://jsolait.net/ , en particulier http://jsolait.net/browser/trunk/jsolait/lib/codecs.js ).

Autres conseils

Vous aurez du mal à obtenir une compression très du tout sur une URL, ils sont trop courts et ne contiennent pas suffisamment d'informations redondantes pour obtenir beaucoup d'avantages algorithmes de style Huffman / LZW.

Si vous avez des contraintes sur l'espace des possibles URLS (par exemple tout le contenu a tendance à être dans le même ensemble de dossiers), vous pouvez coder en dur certaines parties des URLS d'expansion sur le client -. Dire triche

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top