Headless browser image quality - Headless chrome, phantom js, slimmer js
You will get better results setting the deviceScaleFactor to 2 (a.k.a emulate retina):
(async () => { const browser = await puppeteer.launch({ headless: false }) const page = await browser.newPage(); await page.setViewport({width: 800, height: 800, deviceScaleFactor: 2}); await page.goto('https://en.wikipedia.org/wiki/Main_Page') await page.screenshot({ fullPage: true, path: 'test.png' })})();
As you can see, you can get very decent results: