基于CHtmlView实现网页整体放大、缩小
2009-05-20 15:10
281 查看
来源:http://blog.csdn.net/fandongwei/archive/2007/04/02/1548852.aspx
发现maxthon的菜单<查看> -<网页缩放>功能,个人感觉很有意思,于是自己也采用mshtml实现了一下:
CBHtmlView是我从CHtmlView中继承而来的一个类
HRESULT CBHtmlView::Zoom(float fZoom)
//fZoom是放大倍数(>0)
{
if(fZoom<0 || fZoom>10) return S_OK;//小于0或大于10就不理它
//////////
CComPtr<IHTMLDocument2> pDoc = (IHTMLDocument2*)this->GetHtmlDocument();//获取htmlDocument接口
//if(pDoc) return "";
ASSERT(pDoc);
CComPtr<IHTMLElement> pElem;
pDoc->get_body(&pElem);//获取body对象接口
//if(pElem) return "";
ASSERT(pElem);
CComPtr<IHTMLStyle> pStyle;
pElem->get_style(&pStyle);//获取body的style接口
CString str;
str.Format("zoom:%f;", fZoom);
return pStyle->put_cssText(str.AllocSysString());
}
使用的时候调用Zoom(fZoom)就好了,很简单的
还蛮好用的,大家可以试试
发现maxthon的菜单<查看> -<网页缩放>功能,个人感觉很有意思,于是自己也采用mshtml实现了一下:
CBHtmlView是我从CHtmlView中继承而来的一个类
HRESULT CBHtmlView::Zoom(float fZoom)
//fZoom是放大倍数(>0)
{
if(fZoom<0 || fZoom>10) return S_OK;//小于0或大于10就不理它
//////////
CComPtr<IHTMLDocument2> pDoc = (IHTMLDocument2*)this->GetHtmlDocument();//获取htmlDocument接口
//if(pDoc) return "";
ASSERT(pDoc);
CComPtr<IHTMLElement> pElem;
pDoc->get_body(&pElem);//获取body对象接口
//if(pElem) return "";
ASSERT(pElem);
CComPtr<IHTMLStyle> pStyle;
pElem->get_style(&pStyle);//获取body的style接口
CString str;
str.Format("zoom:%f;", fZoom);
return pStyle->put_cssText(str.AllocSysString());
}
使用的时候调用Zoom(fZoom)就好了,很简单的
还蛮好用的,大家可以试试
相关文章推荐
- 网页整体放大/缩小的实现
- HTML5实现端访问时禁止放大和缩小网页
- 基于jquery实现一张图片点击鼠标放大再点缩小
- Android基于mAppWidget实现手绘地图(十五)–如何控制放大缩小
- Android实现网页的放大与缩小
- 基于mAppWidget实现手绘地图(十五)–如何控制放大缩小
- 网页中放大、缩小字体的实现
- Android实现网页的放大与缩小
- 基于jquery实现一张图片点击鼠标放大再点缩小
- Android利用AsyncTask异步类实现网页内容放大缩小
- gallery扩展2——animation基于java代码——实现点击放大缩小
- Android WebView网页自适应手机,可放大缩小设置代码
- flex实现图片根据鼠标的滚动放大或缩小(以鼠标的的位置 为中心放大缩小)
- C#初学者——通过ICommad接口实现mxd的打开、保存、放大、缩小、平移、全局显示、前后视图等
- android 自定义ImageView实现图片手势滑动,多点触摸放大缩小效果
- AE开发中、放大、缩小、漫游、全图的实现
- 基于JS实现导航条之调用网页助手小精灵的方法
- 鼠标滚动实现图片放大缩小[转]
- iOS开发——手势识别器(用手势实现图片旋转和缩小放大)
- 移动设备(触屏设备)禁止放大缩小网页小技巧