可否将HTML文档转化为图形文件?

enita 2000-09-20 09:30:00
请教如何在vb程序中实现将html文件转化为图形文件(只要是常见的文件格式即可)?如有人解答此问题,本人将不胜感激,先绕场三周,谢谢.
...全文
252 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
enita 2000-09-27
  • 打赏
  • 举报
回复
tchaikov:我看了你的建议后下载了个ddk,但不知怎么用,也懒得研究了.下载了一个关于printer的sample(在ddk下载区,2000的),没有目录可查,一堆文件,我头都晕了(应该有捷径吧?),随便打开看了一下,头更晕了.
现在我用另外一种方法解决了我的问题,不用把html转化为图象了不过很谢谢各位高手的帮忙.
谢谢了.
tchaikov 2000-09-23
  • 打赏
  • 举报
回复
to enita:
你哭了??我不知道你是用win95/98还是用NT,如果是前者,你可以直接用98ddk中的一个打印驱动的例子,该驱动是将打印结果输出到一个BMP文件,在TWebbrowser中将网页打印输出即可。如果是NT,那这个只好你自己去编了。另外一个办法是你到网上去找一下,有不少打印到文件的驱动程序。
to shines:
那么客气干吗?关于TWEBBROWSER这个控件,对其进行的图像操作无论是整块的还是像素,都可以进行,但取出的结果不是白板就是白点,可能是水平有限,没搞对吧。我不知道该控件的显示过程是否通过GDI,但如果不是通过GDI,那为什么又能打印出来?实在搞不懂,后来考虑到用这个办法即使转换出来了,72dpi的分辨率也不够,因为我将它用3X3的矩阵转换为1bit的黑白图象,幅面还是不够,就用了打印驱动的办法。不过我觉得你是不是可以试试,能不能在程序里把它转换出来。
  • 打赏
  • 举报
回复
To shines: 我在海淀,不好意思,小弟年方22,主页.... 就不说了,比起大哥您的实在差太远了。大哥来北京是工作还是旅游? OK,有机会见面。
enita 2000-09-22
  • 打赏
  • 举报
回复
怎么没人回复了.我好着急, 还是做不出来, 5555~ 求求各位还是要帮帮忙. 大家都在盘算着国庆的节目了,有缘的,有情的都要见面,可喜可喜!
shines77 2000-09-22
  • 打赏
  • 举报
回复
tchaikov: 不好意思啊,首先我对我的话向你道歉,十万个对不起,一时头脑发热,请你大人有大量,原谅小弟。看来如tchaikov所说的话,那就是不行了,我也没试过,我看还是请tchaikov谈谈他的体会,他在这个问题上是专家。
为什么不行呢,我也试试。

To lumine: 我是准备去北京,不过不知道见不见得到你,小弟年方23,主页 http://shines.363.net,去了北京zdg可能会邀请我去csdn做客,不知大哥住哪,在何处高就,以后会有机会见面。



shines77 2000-09-21
  • 打赏
  • 举报
回复
lumine: Image控件是没有DC的,BitBlt复制不了!!用PictureBox才行。

获得IE的句柄不难,太简单了,如果想获得自己程序里面嵌入的IE控件的句柄更容易。

你是想用鼠标来指定要转化的Html呢,还是想以标题为索引来查找并转化??
Putao 2000-09-21
  • 打赏
  • 举报
回复
关注
enita 2000-09-21
  • 打赏
  • 举报
回复
谢谢各位. 很笨的问如何得到IE的HANDLE呢?可否详细点(如用什么API)

  • 打赏
  • 举报
回复
是不是就是把HTML显示的结果转化为图形文件?
你Find IE的HANDLE
然后用BitBlt把IE的窗体中的内容复制到Image控件中,试试吧
Good Luck!!!!!
prefix 2000-09-21
  • 打赏
  • 举报
回复
我想使用一些图形函数应该就能做到了,等我研究研究,ok?
  • 打赏
  • 举报
回复
引用就中project菜单下的reference,找到webbrowser,就可以定义一个WebBrowser的对象了.
TO shines:
听说你快来北京了?你现在在哪?我在北京。
enita 2000-09-21
  • 打赏
  • 举报
回复
Thanks to lumine and shines.
shines:您的"引用"是什么意思,我很笨的,在WebBrouser里的hWnd属性用不了,该怎么办?.您说的用鼠标指定,我也不明白,太差了!请多指教.
tchaikov 2000-09-21
  • 打赏
  • 举报
回复
to shines
你说的以前提过的人就是鄙人,那是我刚来的时候,你好象还说我有病,:),开玩笑的,请别介意,不过可以说我想尽了一切办法没有能够用程序一次性解决,TWebBrowser中的任何图象信息都根本取不到,我也没搞清它是怎么处理的。
你上面说的方法我全部试过,都搞不定。
我最后处理的办法是写了个虚拟的打印驱动,把网页打印到了一个图象文件,才把这事摆平。
shines77 2000-09-21
  • 打赏
  • 举报
回复
lumine 后面的话还是很有道理的。

enita: 我看你要指定路径的话还是用嵌入的WebBrowser吧,引用就可以了。

如果你想用鼠标指定的话,就用IE浏览器打开页面,然后再用鼠标获得其句柄和DC,然后再BitBlt(),我看你还是懂一些API的,我就不多说了。
  • 打赏
  • 举报
回复
TO shine:
sorry, 我是用BCB做的所以写也IMAGE了,
To enita:
可以用GetWindowRect得到Window的Rect,可算出width&height

shines77 2000-09-21
  • 打赏
  • 举报
回复
这个嘛,可以考虑一下,我想方法还是有的,我记得有谁提过这样的问题的,不过好像是在VC++版。
enita 2000-09-21
  • 打赏
  • 举报
回复
shines: 您说的两种有什么区别? 我只要将磁盘中-指定的HTML转化即可.您指的在自己程序里面嵌入的IE控件是不是WEBBROWSER控件? 我试了一下,用下面的语句好象可以获得IE的句柄,不知正不正确?
Set IE = CreateObject("InternetExplorer.Application")
IEDC = GetDC(IE.hwnd)
还有就算我获得了句柄当我用bitblt时其中的width和height值是什么才能得到正确的结果?

7,765

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧