Eric P Sheets

Results 207 comments of Eric P Sheets

@irfanyounas just saw your last message -- where are you measuring the times? Your code sample doesn't show it. Also, can you put up the main page (it looks like...

If you are using web workers, I recommend also timing the process in the main thread (avoid we workers altogether). FWIW I found in some cases that transferring data to...

Here's a good example: http://sheetjs.com/demos/write_text.html?n=8000. The length of the data in the B column increases as you go down. I do see a massive performance issue

I did some more testing by adding some timing statements (simple `console.log(new Date().getTime())` all over the place) and about 90% of the runtime is in the `zip.generate` operation, which suggests...

@Mithgol this is really neat! I think the MDN article needs to be updated: https://developer.mozilla.org/en-US/docs/Web/API/console.time claims that IE11 supports it, but https://developer.mozilla.org/en-US/docs/Web/API/console.timeEnd has a `?` for IE

@Mithgol updated :) IE11 actually shows the elapsed time down to the 100-nsec level (milliseconds + 4 decimal places)

@sandroboehme you can perform the write process in a WebWorker (which wouldn't lock up the UI). For example, http://oss.sheetjs.com/js-xlsx/ (it's hosted from the [gh-pages branch](https://github.com/SheetJS/js-xlsx/tree/gh-pages) ) uses a web worker...

@irfanyounas That function [performs a scan in the shared string table](https://github.com/SheetJS/js-xlsx/blob/master/bits/66_wscommon.js#L6). That behavior can be disabled by [setting the option `bookSST` to false](https://github.com/SheetJS/js-xlsx#writing-options). I agree that a linear scan is...

@irfanyounas The original problem is that some readers (notably iOS Numbers) had issues with inline strings. The SST was the only way for strings to be displayed. Testing it now,...

@kumarr10 live demo https://jsfiddle.net/xgr4sbk1/ ```js var NR = 300000, NC = 31; console.time("prep"); var ws = XLSX.utils.aoa_to_sheet(Array.from({length:NR}, (_,i) => Array.from({length: NC}, (_,j) => j == 0 ? `Row${i+1}` : i+j)),...