hahaaluo
路人甲
路人甲
  • 注册日期2006-08-05
  • 发帖数146
  • QQ
  • 铜币591枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1845回复:2

关于打印的一些问题

楼主#
更多 发布于:2006-12-08 21:27
<P>我们在打印时候是都在PageLayout里的 但是我放的图是在MapControl里的 ,那么我是怎么把MapControl里的转到PageLayout里头打印呢 ??</P>
<P>各位路过的都来讨论下,希望你看完后能发表点意见.谢谢!~~ </P>
喜欢0 评分0
gzstyxb
路人甲
路人甲
  • 注册日期2004-09-22
  • 发帖数358
  • QQ
  • 铜币1045枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2006-12-15 09:09
<P>我是把MapControl里面的图层,加到PageLayout里面去的。另外也可以用MapControl来打印,办法是把你的打印机HDC告诉MapControl,让MapControl把图形绘制到打印机的HDC,这样就把图形打印出来了。 </P>
由爱故生忧, 由爱故生怖. 若离于爱者, 无忧亦无怖.
举报 回复(0) 喜欢(0)     评分
zhaojie2008
路人甲
路人甲
  • 注册日期2007-06-04
  • 发帖数30
  • QQ
  • 铜币21枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2007-07-18 22:45
<P>试试 看</P>
<P>C# Code:<BR>            IMap pMap;<BR>            IPageLayoutControl pPageLayoutCtl;<BR>            pPageLayoutCtl=(IPageLayoutControl)this.PLayoutCtl.Object;<BR>            IDisplayTransformation pDisplayTrans;<BR>            IObjectCopy pObjectCopy;<BR>            pObjectCopy=new ObjectCopyClass();<BR>            <BR>            //得到地图的拷贝<BR>            Object pCopiedMap;<BR>            pCopiedMap=pObjectCopy.Copy(MapCtl.Map);<BR>            pMap=MapCtl.Map;<BR>            //地图重画<BR>            IMap pToOverwriteMap;<BR>            pToOverwriteMap=PLayoutCtl.ActiveView.FocusMap;<BR>            Object pObj;<BR>            pObj = (Object)pToOverwriteMap;<BR>            pObjectCopy.Overwrite(pCopiedMap,ref pObj);</P>
<P>            double w,h;<BR>            IActiveView pActiveView;<BR>            pActiveView=(IActiveView)PLayoutCtl.ActiveView.FocusMap;<BR>            pDisplayTrans=pActiveView.ScreenDisplay.DisplayTransformation;<BR>            pDisplayTrans.VisibleBounds=MapCtl.ActiveView.Extent;<BR>            PLayoutCtl.Page.QuerySize(out w,out h);<BR>            pActiveView.Refresh();</P>
举报 回复(0) 喜欢(0)     评分
游客

返回顶部