An even slimmer pdf.js
<i>pdf.js uses HTML canvas elements to render each PDF page</i><p>If it's doing this for text or vector graphics content, then I'm of the strong opinion that they're doing it <i>very</i> wrong - HTML already has facilities to render text, and browsers support SVG for vector graphics. The canvas elements should be used for bitmap images only, since that's what they were designed for.<p>Edit: this thought occurred to me because the Chinese site Baidu has an online document viewer which basically converts uploaded PDFs into HTML and does it <i>without</i> needing to canvas everything; here's an example:<p><a href="http://wenku.baidu.com/view/544340cea1c7aa00b52acb38.html" rel="nofollow">http://wenku.baidu.com/view/544340cea1c7aa00b52acb38.html</a><p>In my Chrome it takes ~60M sitting on the first page, complete with all the other pieces of the page (including ads). Scrolling through all the pages of the document, it ends up at ~130M.<p>Here is the original document:<p><a href="http://www.promelec.ru/pdf/MBI5030%20Preliminary.pdf" rel="nofollow">http://www.promelec.ru/pdf/MBI5030%20Preliminary.pdf</a><p>When it is opened in PDF.js (v1.0.277) to the first page, I see ~95M and scrolling through all the pages makes it peak at ~270M; and this is just for the PDF viewer only, so there is clearly much room for improvement.