The title say it all, I want a 100% accurate tool to convert a HTML page to a PDF document.
Check out wkhtmltopdf. It uses the Webkit layout engine (as used in Safari, Chrome, etc.).
+1 good answer, wkhtml even waits until jscript code is done with the dom (nice for asciidoc-toc stuff)– akiraMar 22, 2010 at 15:17
I've been using NitroPDF for a couple years. Just found wkhtmltopdf, it works better, is faster and runs on ubuntu. May 18, 2010 at 4:14
Been looking for something like this for a number of hours now - thank you!– R4D4Feb 15, 2013 at 0:11
i use it in ubuntu . works great but somt pictures are not in the output. my not perfect workaround:
cutycapt --url=https://stackoverflow.com/cv/sl5net --out=traditional_sl5net.jpg --print-backgrounds=on && img2pdf traditional_sl5net.jpg -o traditional_view.pdf– SL5netFeb 3, 2021 at 16:10
Consider the fact that no two browsers can render that HTML completely identically for a moment, and then realize that you're never going to get it.
2Well, if you interpret "100% accurate" to mean "exactly as rendered in a specific browser", then you can most definitely get that. Mar 22, 2010 at 14:43
@Michael: Sure, but that information wasn't included in the question.– RowanMar 23, 2010 at 8:15
- Install a virtual printer driver that saves print output as PDF
- Open HTML in browser
- Printo to virtual printer
nice workaround, I'll try it– user31936Mar 22, 2010 at 14:36
Be aware that depending on the browser you're using, the settings in it, and the webpage, some parts of the printed PDF page won't be 100% what you see on screen. Obvious things to look for, if you have a dark/black background set with light/white text over it, default print settings in most browsers will change that to black text with white background.– GAThrawnMar 22, 2010 at 15:18
Yes, this won't be 100% accurate, results will vary from page to page.– RowanMar 23, 2010 at 8:16
@MichaelBorgwardt: AFAIK, virtual printers do not fully support HTML links, right?– dma_kSep 12, 2011 at 22:27
I've been looking for this too. My best solution at the moment is to use a combination of Firefox and PDFCreator. I've also tried the other main browsers, but they don't let you turn off their own headers and footers. If you want to be able to print grey/gray text as grey (rather than black) then be sure to enable the "Print Background (color and images)" option in the File | Page Setup | Format & Options dialog.
Unfortunately, none of the main browsers seem to support the CSS @page rule for specifying things like headers, footers, widows, orphans, page sizes, landscape/portrait, etc.
There is a tool called Prince that claims to be able to do all of that (and more), with good reviews, but I haven't used it because it's expensive. (There is a free version for personal use, but it adds its own logo onto the front page of the PDF document.)
wkpdf worked perfectly for me when wkhtmltopdf did not, on OS X. It's a Ruby Gem, which was very simple to use on a stock OS X install.
I use Primo PDF to convert HTML to PDF. it's just a PDF Printer.
It's useful one for me because I couldn't use the Internet everything. If I want to read some articles from Wiki, I've printed out with that printer and read at home.
if you use Ubunto.
today i using img2pdf:
sudo apt-get install -y cutycapt sudo apt-get install -y img2pdf cutycapt --url=https://stackoverflow.com/story/sl5net --out=story_sl5net.jpg --print-backgrounds=on && img2pdf story_sl5net.jpg -o story_sl5net.pdf
my problem is that no automatic page breaks are created when converting
for OCR i using https://wiki.ubuntuusers.de/Paperwork/
Maybe also very helpful way to do this: