- UID
- 204105
- 积分
- 0
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2004-12-19
- 最后登录
- 1970-1-1
|
发表于 2008-1-24 09:26:19
|
显示全部楼层
CWaitCursor wait;
//锁当前文档信息
Acad::ErrorStatus es;
AcApDocument *pDoc =acDocManager->curDocument();
es = acDocManager->lockDocument(pDoc);
if (es != Acad::eOk)
return;
AcDbLayoutManager *pLT = NULL;
pLT = acdbHostApplicationServices()->layoutManager();
CString strTFH = "布局1";
if(pLT->findLayoutNamed(strTFH) != NULL)
{//设置当前布局
pLT->setCurrentLayout(strTFH);
IAcadApplication IApp;
IDispatch *pDisp = acedGetAcadWinApp()->GetIDispatch(TRUE);
IApp.AttachDispatch(pDisp);
IAcadDocument IDoc;
pDisp = IApp.GetActiveDocument();
IDoc.AttachDispatch(pDisp);
IApp.ReleaseDispatch();
IAcadPlot IPlot;
pDisp = IDoc.GetPlot();
IPlot.AttachDispatch(pDisp);
IDoc.ReleaseDispatch();
//设置保存路径信息
_variant_t varCFG;
varCFG.SetString("");
CString strPath = m_strSavePath;//保存路径名称
if(strPath.Right(1) == "\\") //去掉尾部的"\"符号,后面作统一的设置
strPath = strPath.Left(strPath.GetLength()-1);
CString strOutFileName = "";
strOutFileName.Format("%s\\%s",strPath, strTFH);
//根据不同打印类型发送打印命令
BOOL bPrintToPaper = printType.bPrintToPaper;
BOOL bPrintToPLT = printType.bPrintToPLT;
BOOL bPrintToRaster = printType.bPrintToRaster;
if(bPrintToPaper)
IPlot.PlotToDevice(varCFG);
if(bPrintToPLT)
IPlot.PlotToFile(strOutFileName, varCFG);
if(bPrintToRaster)
IPlot.PlotToFile(strOutFileName, varCFG);
IPlot.ReleaseDispatch();
}
acDocManager->unlockDocument(pDoc); |
|