PUBLIC oForm oForm = CREATEOBJECT('form1') oForm.SHOW() DEFINE CLASS form1 AS FORM TOP = 0 LEFT = 0 HEIGHT = 530 WIDTH = 800 CAPTION = "HTML sample" NAME = "Form1" browserfontsize = 1 ADD OBJECT cmdGrow AS COMMANDBUTTON WITH ; TOP = 0, ; LEFT = 0, ; width = 20, ; CAPTION = "A" ADD OBJECT cmdShrink AS COMMANDBUTTON WITH ; TOP = 0, ; LEFT = 30, ; width = 20, ; CAPTION = "a" PROCEDURE cmdGrow.Click thisform.BrowserSetFontSize(1.1) ENDPROC PROCEDURE cmdShrink.Click thisform.BrowserSetFontSize(0.9) ENDPROC ADD OBJECT htmlviewer AS OLECONTROL WITH ; TOP = 30, ; LEFT = 0, ; HEIGHT = 500, ; WIDTH = 800, ; VISIBLE = .T., ; NAME = "HTMLViewer", ; OLECLASS = 'Shell.Explorer.2' PROCEDURE INIT WITH THISFORM.htmlviewer .Navigate2('http://levelextreme.com') DO WHILE .ReadyState # 4 && Wait for ready state ENDDO ENDWITH ENDPROC PROCEDURE BrowserSetFontSize(tnSize) *-- dn 06/03/2007 LOCAL loBrowser AS "Shell.Explorer.2" loBrowser=THIS.htmlviewer loDoc=loBrowser.DOCUMENT FOR EACH loStyle IN loDoc.stylesheets FOR i=0 TO loStyle.rules.LENGTH-1 loRule=loStyle.rules(i) loRuleStyle=loRule.STYLE lcTag=loRule.selectorText IF EMPTY(THIS.oRules.GETKEY(lcTag)) oRule=CREATEOBJECT("empty") ADDPROPERTY(oRule, "cSize", EVL(loRuleStyle.FONTSIZE, "10px")) ADDPROPERTY(oRule, "nSize", VAL(oRule.cSize)) ADDPROPERTY(oRule, "cUnits", CHRTRAN(oRule.cSize,"0123456789.","")) THIS.oRules.ADD(oRule, lcTag) ELSE oRule=THIS.oRules.ITEM(lcTag) ENDIF oRule.nSize=oRule.nSize* tnSize THIS.browserfontsize=oRule.nSize IF NOT oRule.cUnits = "%" lcSize=ALLTRIM(TRANSFORM(oRule.nSize,"99999.99"))+oRule.cUnits loRuleStyle.FONTSIZE=lcSize ENDIF ENDFOR ENDFOR ENDPROC ENDDEFINE