Je pense que le problème est que le composant TWebBrowser
exécute Internet Explorer en mode de compatibilité. En effet, si vous ouvrez la page docwiki dans Internet Explorer 8 et versions ultérieures, les polices sont petites et agréables, contrairement à leur apparence dans le TWebBrowser
. Mais si vous cliquez sur le bouton "Affichage de compatibilité" dans la fenêtre Internet Explorer, vous obtiendrez le même texte volumineux que dans le composant TWebBrowser
. (. Il est bien connu que IE6 utiliser du texte trop grand)
Selon this MSDN blog entry et the MSDN docs, pour contrôler le mode de compatibilité du contrôle TWebBrowser
, utilisez le Registre:
procedure TForm3.FormCreate(Sender: TObject);
begin
with TRegistry.Create do
try
RootKey := HKEY_CURRENT_USER;
if OpenKey('Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION', true) then
WriteInteger(ExtractFileName(Application.ExeName), 8888);
finally
Free;
end;
WebBrowser1.Navigate('http://docwiki.embarcadero.com/RADStudio/en/Main_Page');
end;
Les valeurs sont 8000, 7000 et 8888 pour "IE8 Standards Mode", "IE7 Standards Mode" et "IE8 Standards Mode (Forced)", respectivement. Par conséquent, le code ci-dessus va forcer le mode standard IE8. Cependant, de façon surprenante, le réglage du mode à la norme ne fera que rendre la police encore plus grande.
Andreas, merci pour votre commentaire sur le 'mode de compatibilité', mais pourquoi certaines pages ont le même style et la même police quand elles fonctionnent en 'mode de compatibilité'? – Salvador