The best way to provide thumbnails depends in part on which of the following you are generating:
The issue is the thumbnail graphic itself.
For server-based HTML or OmniHelp, you can include an additional smaller version of each image, to replace (and provide a link to) the original image. Providing an additional image for a thumbnail makes sense if users are downloading a page at a time; if they do not want to view the full-size image, they can avoid the time cost of downloading it.
However, for a compiled Help system (such as HTML Help), or a local-based system (such as JavaHelp, Oracle Help for Java, or local HTML or OmniHelp), the additional-image method increases the file size (and download time), because of the added size of the thumbnails themselves. For these cases it can make more sense to use the original image file, but specify a smaller size, and let the browser do the scaling. The resulting thumbnail might not be as pretty but it should still be identifiable, and that is really all that is required of thumbnails.
Which method is better for a given project? It depends. The graphics count and sizes are among the factors to consider.