What are the HTML Viewer Components?

The HTML component set consists of the ThtmlViewer, TFrameViewer, and TFrameBrowser components. All three are HTML document display components:

ThtmlViewer The basic component. ThtmlViewer displays single (non-frame) documents. It also forms the basis for the other two components.

TFrameViewer Displays both Frame and single HTML documents. TFrameViewer is oriented more for local disk file use.

TFrameBrowser    Also displays Frame and single HTML documents. However, TFrameBrower is oriented toward Internet style protocols and URL usage. Additional code and/or components are generally required to use TFrameBrowser.

Version 9 of these components supports most of the HTML 3.2 specifications with many additional popular HTML 4 enhancements. Many Cascading Style Sheet properties are also supported.

While HTML documents are normally associated with the Internet, they are also very useful for displaying all kinds of textual material such as documentation, helpfiles, etc. Graphics are easily incorporated in these documents.

Files Supplied

DEMO.HTM        This file
*.HTM           Frame files for DEMO.HTM
FRAMEDEM.EXE    The TFrameViewer demo program
Various image and sound files for demo

Source code for the demo programs
   FRAMEDEM.DPR    Source for the TFrameViewer demo program
   FRMUNIT.PAS, .DFM
   HTMLDEMO.DPR    Source for the ThtmlViewer demo program
   DEMOUNIT.PAS, .DFM
   HTMLEDITOR.DPR  Source for the demo editor program
   HTMLED1.PAS, .DFM
   HTMLABT.PAS, .DFM
   FONTDLG.PAS, .DFM
   SUBMIT.PAS, .DFM
   IMGFORM.PAS, .DFM

   PREVIEWFORM.PAS, .DFM
   PRINTSTATUSFORM.PAS, .DFM
   GOPAGE.PAS, .DFM
   GRID.RES

Source code for the ThtmlViewer, TFrameViewer, and TFrameBrowser components

   FRAMBRWZ.PAS, .DCR
   FRAMVIEW.PAS, .DCR
   HTMLVIEW.PAS, .DCR
   HTMLSUBS.PAS
   HTMLSBS1.PAS
   READHTML.PAS
   HTMLUN2.PAS
   HTMLGIF1.PAS
   HTMLGIF2.PAS
   URLSUBS.PAS
   METAFILEPRINTER.PAS
   DITHERUNIT.PAS       
   VWPRINT.PAS          
   HTMLCOMPEDIT.PAS     
   STYLEUN.PAS
   STYLEPARS.PAS
   HTMLCONS.INC         File of optional compile time constants
   PNGIMAGE1.PAS
   PNGZLIB1.PAS
   FRAMEVIEWERREG.PAS
   FRAMEVIEWER4.DPK, .RES  Delphi 4 Package source file
   FRAMEVIEWER5.DPK, .RES  Delphi 5 Package source file
   FRAMEVIEWER6.DPK, .RES  Delphi 6 Package source file
   FRAMEVIEWER7.DPK, .RES  Delphi 7 Package source file
   FRAMEVIEWER2005.DPK, .RES  Delphi 2005 Package source file
   FRAMEVIEWER2006.DPK, .RES  Delphi 2006 Package source file
   HTML32.RES           Resource file
   HTMLVIEW.HLP         The help file
   HTMLVIEW.CNT         Help contents file

Installing The HTML Components

If you are installing for more than one version of Delphi, use separate directories for the installations.

Installation problems are almost always due to old or incorrect files being accessed. Make sure that the Library Path or Search Path does not point to the directory of any old HTML component files. The Library Path can be edited from the Tools|Environment Options dialog, Library tab. The Search Path from the Project|Options dialog, Directories/Conditionals tab.

Delete all DCU files generated with previous installations.

The Register procedures in HTMLVIEW.PAS, FRAMVIEW.PAS, and FRAMBRWZ.PAS are set to place the components on the palette page tab named Samples. These can be relocated later from the IDE if desired.

Delphi 4, 5, 6, and 7

  1. Choose File|Open... from the main menu. Browse through the dialog to find FRAMEVIEWER4|5|6|7.DPK (by default in the \THTML\PACKAGES directory).

  2. Click Open and in the ensuing dialog, press Compile and then Install.

  3. When using the HTML components, include the \THTML\Package directory in the searchpath. The searchpath can be edited by choosing Project|Options|Directories|Conditionals from the main menu.

  4. Make sure that the Library Path string does not point to the directory of any old HTML component files. The Library Path string can be edited from the Tools|Environment Options dialog, Library tab.

Delphi 2005|6

  1. Choose File|Open... from the main menu. Browse through the dialog to find FrameViewer2005|6.bdsproj (by default in the \THTML\PACKAGES directory).

  2. Click Project|Compile FrameViewer2005|6 to compile FrameViewer2005|6.bpl.

  3. To add the components to the Tool Palette, Choose Component|Install packages. Click the Add... button and select FrameViewer2005|6.bpl.

  4. When using the HTML components, include the \THTML\Package directory in the searchpath. The searchpath can be edited by choosing Project|Options|Directories/Conditionals from the main menu.

  5. Make sure that the Library Path string does not point to the directory of any old HTML component files. The Library Path string can be edited from the Tools|Environment Options dialog, Library tab.

Installing the Help File

The file HTMLVIEW.HLP will supply context sensitive help for the HTML components.

Delphi 4, 5, and 6

  1. Remove any old HTMLVIEW.HLP and HTMLVIEW.CNT files from the BORLAND\DELPHIX\HELP directory. It's no longer necessary to move the new files to this directory.

  2. Edit the DELPHI.CNT file (in the BORLAND\DELPHIX\HELP directory. Load the file into an editor and add the following line at the end:
       :include HTMLVIEW.CNT
    
    You'll find other similar lines already there.

  3. For Delphi 6, add the same line to the DEL6VCL.CNT file also.

If you later decide to remove the HTML Components, this added information to the DELPHI.CNT file will simply be ignored.

Delphi 7

  1. Edit both the D7.CNT and D7VCL.CNT files (in the BORLAND\DELPHI7\HELP directory. Load the files into an editor and add the following line at the end:
       :include HTMLVIEW.CNT
    
    You'll find other similar lines already there.

UnInstalling the Components

To uninstall the HTML components from Windows:

Contacts

Internet: davidbaldwin@pbear.com
World Wide Web: http://www.pbear.com/

Acknowledgements

The following are some of the organizations and individuals who have contributed to the HTML components:
 

SkyLine Tools, Inc. ImageLib Graphics Library
Radek Przybyl Ideas and code for establishing Print margins
Theodor Kleynhans Animated GIF code
Chris Wallace Print preview ideas and code
Yves Urbain The Connection concept for protocol support
Anders Melander Color dithering code in DitherUnit.Pas
Gustavo Daud PngImage.pas and PngZLIB.pas
Ron Collins GIF image code
Mike Lischke Unicode routines and assistance
jrsoftware.org Inno Installer

Copyright © 1995-2008 by L. David Baldwin

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Note that the source modules, HTMLGIF1.PAS, PNGZLIB1.PAS, DITHERUNIT.PAS, and URLCON.PAS are covered by separate copyright notices located in those modules.