Hi MG,

thanks for your hint. Meanwhile I was able to fix that and wrote a
small utility function for client-side zip generation.

It is extremely flexible and allows you to add javascript strings,
files hosted by LocalServer and/or GearsCanvas elements
to your zip archive. I already coded an interesting demo and plan to
release it the next days. Of course, this group will be notified.

Franz



On 12 Nov., 21:07, MG <[email protected]> wrote:
> Hi Franz,
>
> blobs can only be constructed out of utf-8 strings or binary data
> (integers), while you are assuming that BlobBuilder is "smart" and
> will understand base64. It won't. You should convert your base64-
> encoded zip file into an array of integers and feed them, one by one,
> to BlobBuilder (or as an array - see BlobBuilder API). This works
> reasonably fast in Gears plugin but is terribly slow in Chrome for
> large files (100k+).
>
> MG
>
> On Nov 10, 2:33 pm, gear-newbie <[email protected]> wrote:
>
> > Today I stumpled upon JSZip (http://jszip.stuartk.co.uk/), a very
> > interesting  library, that allows the creation of zip archives with
> > Javascript. The zip archive is dumped out as base64 encoded string,
> > but thanks to Gears' blobBuilder/ResourceStore it can be served from a
> > "real" url.
>
> > This offers some interesting possibilities: you could include data
> > backup/export facilities in your gears app (e.g. download your wiki
> > pages as zip) without bothering your server.
>
> > I have been playing around a bit with this, but i failed to serve a
> > valid zip file via gears (when i serve jszip's output via dataurl,
> > everything is fine, but this raises other cross-browser difficulties
> > and is not an option).
>
> > var blobBuilder = google.gears.factory.create('beta.blobbuilder');
> > var zip = new JSZip()
> > zip.add("Hello.txt", "Hello World\n");
> > var content = zip.generate();
> > blobBuilder.append('Content-Transfer-Encoding: base64\r\n');
> > MyResourceStore.captureBlob(content,'dummy.zip','application\zip'); //
> > MyResourceStore was previously instantiated
>
> > I suppose that I need to adapt the http headers and/or the transfer
> > encoding. any suggestions?
>
> > Franz

Reply via email to