从MFC MDI CView生成PDF页面

时间:2009-11-29 13:57:09

标签: pdf mfc

我的c ++ MFC MDI应用程序在其视图中显示工程图。将CView派生对象转储为PDF文件的好方法是什么?您可以建议哪些图书馆(不是nesesery免费)? 我研究了一些像开罗和libHaru这样的图书馆。可以绘制所有图形组件,但我认为CView已经完成了所有绘图工作。它可以通过PS或类似的东西转储成PDF吗? 感谢

1 个答案:

答案 0 :(得分:1)

如果您下载CutePDF,则可以直接打印到PDF。它就像普通的打印机打印一样。我很确定如果你从adobe获得acrobat pro,你可以做同样的事情。

编辑:

使用设备上下文,您可以以“可以”被驱动程序用来存储矢量图形的方式完成所有绘图。

如果您处理WM_PRINT命令(消息映射中的ON_MESSAGE),那么您将获得一个HDC。您可以通过执行以下操作从HDC检索MFC样式的CDC:

CDC* pDC = CDC::FromHandle( hDC );

现在您可以按如下方式向打印机发出标准DC绘图命令:

int width = pDC->GetDeviceCaps( HORZRES );
int height = pDC->GetDeviceCaps( VERTRES );
pDC->MoveTo( 0, 0 );
pDC->LineTo( width, height );

这将从左上角到右下角绘制一个。如果你相应地缩放所有矢量图形,他们希望(不幸的是,我不确定这一点),在PDF上显示为矢量命令而不是光栅命令。