【问题标题】:How to Programmatically Change Font in TWebBrowser如何以编程方式更改 TWebBrowser 中的字体
【发布时间】:2016-02-26 02:27:07
【问题描述】:

我们正在设计模式下使用 Web 浏览器构建电子邮件客户端。我们的客户有自己想要使用的特定字体。所以我们希望能够使用他们给我们的字体来设置网络浏览器的字体。他们给我们的字体只是一个字符串,例如“Arial”

如何设置浏览器字体?

我们尝试了以下方法:

HtmlPage.execCommand('FONTNAME', False, 'Arial');

但这仅适用于选择,并且由于 Web 浏览器一开始是空的,因此没有选择。一旦用户开始输入,字体就会变回 times new roman。

我也试过

HtmlPage := ((Sender as TWebBrowser).Document  as IHTMLDocument2);
while (Sender as TWebBrowser).QueryStatusWB( OLECMDID_SELECTALL) <> OLECMDF_SUPPORTED + OLECMDF_ENABLED do
        Application.ProcessMessages;
(Sender as TWebBrowser).ExecWB(OLECMDID_SELECTALL,OLECMDEXECOPT_PROMPTUSER,pvaIn,pvaOut);
HtmlPage.execCommand('FONTNAME', False, 'Arial');

但是,这是一个无限循环。

任何建议将不胜感激:) 谢谢。

【问题讨论】:

  • 在样式表中做。或者只是忽略用户。无论字体是什么,他们都会继续使用您的软件,您可以花时间做一些更有价值的事情。

标签: delphi fonts twebbrowser


【解决方案1】:

这个呢?

((Sender as TWebBrowser).Document as IHTMLDocument2).body.style.fontFamily:='Arial';

【讨论】:

  • 感谢这项工作,请注意 l 需要在 Sender As TWebBrowser 周围加上括号
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-01-28
  • 1970-01-01
  • 1970-01-01
  • 2012-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多