How To Change the Font Size in a WebBrowser Control That Is Hosted Inside a Visual Basic Application

This article was previously published under Q304103
This article has been archived. It is offered "as is" and will no longer be updated.
SUMMARY
You can use the ExecWB method to print the content inside a WebBrowser control. In addition, you can use ExecWB to change the font size of the text that is displayed in a WebBrowser control that is embedded in Microsoft Visual Basic application. This article demonstrates how to use ExecWB in this way.
MORE INFORMATION
You can use ExecWB and pass the OLECMDID_ZOOM command as the cmdID parameter to retrieve the current value of the zoom level. Zoom level refers to the current font size of the text that Internet Explorer shows; it is equivalent to the value that is specified as Text Size on the View menu of Internet Explorer.

After you retrieve the current value of the font size, you can set it to a different value. The default value should be 2, which corresponds with Medium in the graphical user interface menu. Because the option allows both 2 levels greater and 2 levels smaller, the valid range for the zoom level is 0 through 4, in which 0 is smallest and 4 is largest. The OLECMDID_GETZOOMRANGE command returns the valid range for the font size, which should be from 0 to 4.

The following steps demonstrate how to add this functionality into your custom browser:
  1. Open a new standard EXE project in Visual Basic 6.0. Form1 is created by default.
  2. Add Microsoft Internet Controls into your component lists.
  3. Add a WebBrowser control and three command buttons to Form1, and use the default names.
  4. Copy and paste the following code in Form1:
    Private Sub Form_Load()    WebBrowser1.Navigate "http://www.microsoft.com"    Command1.Caption = "Get current font size"    Command2.Caption = "Decrease font size"    Command3.Caption = "Increase font size"End SubPrivate Sub Command1_Click()Dim Z As Variant     'Z is the value to hold the zoom level.WebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, Null, ZMsgBox "The current font size is " & ZEnd SubPrivate Sub Command2_Click()Dim Z As Variant     'Z is the value to hold the zoom level.WebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, Null, ZIf Z > 0 Then    Z = Z - 1Else    Z = 0End IfWebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, Z, NullEnd SubPrivate Sub Command3_Click()Dim Z As Variant     'Z is the value to hold the zoom level.WebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, Null, ZIf Z < 4 Then    Z = Z + 1Else    Z = 4End IfWebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, Z, NullEnd Sub					
  5. Run the project. After the page is loaded, you can click the command buttons to see the font size change that appears in the WebBrowser control.
REFERENCES
For more information, see the following Microsoft Web sites:For additional information about changing the font size of a WebBrowser control that is hosted inside a Microsoft Visual C++ application, click the article number below to view the article in the Microsoft Knowledge Base:
156693 SAMPLE: IEZoom.exe Changes the Font Size of the WebBrowser Control
For more information about developing Web-based solutions for Microsoft Internet Explorer, visit the following Microsoft Web sites:
change text bigger smaller OLECMDID_ZOOM VB app zoom IE
Properties

Article ID: 304103 - Last Review: 12/06/2015 04:09:05 - Revision: 3.0

Microsoft Internet Explorer 4.01 Service Pack 1, Microsoft Internet Explorer 4.01 Service Pack 2, Microsoft Internet Explorer 5.0, Microsoft Internet Explorer 5.01, Microsoft Internet Explorer (Programming) 5.01 SP1, Microsoft Internet Explorer 5.5

  • kbnosurvey kbarchive kbhowto kbwebbrowser KB304103
Feedback