2017-01-12 6 views
1

を使用して0である理由私は、次のコードを使用して圧縮する私のダウンロード可能なXMLファイルを変換しますが、ファイルサイズが同じ土台であると、圧縮比は圧縮の理由がにした0%圧縮比がJSZip

var xmlcontent = "<?xml version='1.0' encoding='UTF-8'?><Body>"; 
    xmlcontent += json2xml(data); 
    xmlcontent += "</Body>"; 

    var zip = new JSZip(); 
    zip.file("test1.xml", xmlcontent); 
    zip.generateAsync({ type: "blob" }) 
    .then(function (content) { 

     var a = document.createElement("a"); 
     document.body.appendChild(a); 
     a.style = "display: none"; 
     var url = window.URL.createObjectURL(content); 
     a.href = url; 
     a.download = "test.zip"; 
     a.click(); 
     window.URL.revokeObjectURL(url); 

    }); 

を示しクライアントが取得するファイルのサイズを小さくしてください。ただし、明らかに影響はありませんでした。親切にもファイルサイズを小さくする方法を提案します。

+0

感謝のoptionsパラメータでDEFLATEdocumentation

変更、それに記載されたそれを得たとして。今は完璧に動作しています。あなたは答えとしてそれを置くことができます:) –

答えて

1

ファイル(複数可)のデフォルト設定の圧縮はSTORE(=圧縮なし)である - .generateAsync(options)

var zip = new JSZip(); 
zip.file("test1.xml", xmlcontent); 
zip.generateAsync({ 
     type: "blob", 
     compression: "DEFLATE" 
    }) 
    .then(function (content) { 
      ... 
    }); 
+0

@DanielHaleyありがとう:) – Andreas