Share via


Changing Fonts with the WebBrowser Control (Windows Embedded CE 6.0)

1/6/2010

The WebBrowser automation model does not support a method that allows you to change the font of the text of the currently displayed page. However, the WebBrowser control exposes this functionality through the IOleCommandTarget interface. As shown in the following example, you can call the IOleCommandTarget::Exec method with OLECMDID_ZOOM, using the pvaIn input argument to pass a value in the range of 0 to 5, to indicate the desired scale of the font. This mimics the functionality available through the Internet Explorer Fonts command on the View menu.

LPDISPATCH pDisp = NULL;
LPOLECOMMANDTARGET pCmdTarg = NULL;
pDisp = m_pBrowser.get_Document();
ASSERT(pDisp);
pDisp->QueryInterface(IID_IOleCommandTarget, (LPVOID*)&pCmdTarg);
ASSERT(pCmdTarg);
VARIANT vaZoomFactor;   // input arguments
VariantInit(&vaZoomFactor);
V_VT(&vaZoomFactor) = VT_I4;
V_I4(&vaZoomFactor) = fontSize;
pCmdTarg->Exec(NULL,
            OLECMDID_ZOOM,
            OLECMDEXECOPT_DONTPROMPTUSER,
            &vaZoomFactor,
            NULL);
VariantClear(&vaZoomFactor);
if (pCmdTarg)
   pCmdTarg->Release(); // release document's command target
if (pDisp)
   pDisp->Release();    // release document's dispatch interface

See Also

Other Resources

Internet Explorer Browser Control Host Application Development