使用msword.olb操作word(5)

来源:互联网 发布:发现网络存在问题 编辑:程序博客网 时间:2024/06/04 20:05

摘要: 使用msword.olb规范WORD文件字体,行间距,页边距.

_Application oWordApp;Documents oWordDocs;_Document oWordDoc;Selection oWordSel;_ParagraphFormat oWordParFor;_Font oWordFont;PageSetup oWordPage;Styles oWordStyles;CString strDoc = _T("C:\\正文.doc");COleVariant vTrue((short)TRUE),vFalse((short)FALSE),vOpt((long)DISP_E_PARAMNOTFOUND,VT_ERROR);if (!oWordApp.CreateDispatch(_T("Word.Application"))){AfxMessageBox(_T("Word CreateDispatch Failed!"));return ;}try{oWordApp.SetVisible(TRUE);oWordApp.Activate();oWordDocs = oWordApp.GetDocuments();oWordDoc  = oWordDocs.Open(COleVariant(strDoc),vFalse,vFalse,vFalse,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt);oWordSel  = oWordApp.GetSelection();oWordSel.WholeStory();oWordFont = oWordSel.GetFont();oWordFont.SetSize(16.0f);oWordFont = oWordSel.GetFont();oWordFont.SetName(_T("仿宋_GB2312"));oWordDoc.Save();oWordParFor = oWordSel.GetParagraphFormat();oWordParFor.SetRightIndent(0.0f);oWordParFor.SetSpaceBefore(0.0f);oWordParFor.SetSpaceBeforeAuto(0l);oWordParFor.SetSpaceAfter(0.0f);oWordParFor.SetSpaceAfterAuto(0l);oWordParFor.SetLineSpacingRule(4l);oWordParFor.SetLineSpacing(28.0f);oWordParFor.SetAlignment(3l);oWordParFor.SetWidowControl(0l);oWordParFor.SetKeepWithNext(0l);oWordParFor.SetKeepTogether(0l);oWordParFor.SetPageBreakBefore(0l);oWordParFor.SetNoLineNumber(0l);oWordParFor.SetHyphenation(-1l);oWordParFor.SetFirstLineIndent(9.92126f);oWordParFor.SetOutlineLevel(10l);oWordParFor.SetCharacterUnitRightIndent(0.0f);oWordParFor.SetCharacterUnitLeftIndent(0.0f);oWordParFor.SetCharacterUnitFirstLineIndent(2.0f);oWordParFor.SetLineUnitBefore(0.0f);oWordParFor.SetLineUnitAfter(0.0f);oWordParFor.SetAutoAdjustRightIndent(-1l);oWordParFor.SetDisableLineHeightGrid(0l);oWordParFor.SetFarEastLineBreakControl(-1l);oWordParFor.SetWordWrap(-1l);oWordParFor.SetHangingPunctuation(-1l);oWordParFor.SetHalfWidthPunctuationOnTopOfLine(0l);oWordParFor.SetAddSpaceBetweenFarEastAndAlpha(-1l);oWordParFor.SetAddSpaceBetweenFarEastAndDigit(-1l);oWordParFor.SetBaseLineAlignment(4l);oWordDoc.Save();oWordFont = oWordSel.GetFont();if (oWordFont.GetNameFarEast() == oWordFont.GetNameAscii()){oWordFont.SetNameAscii("");}else{oWordFont.SetNameFarEast("");}oWordDoc.Save();oWordPage = oWordDoc.GetPageSetup();oWordPage.SetOrientation(0l);oWordPage.SetTopMargin(104.8819f);oWordPage.SetBottomMargin(99.2126f);oWordPage.SetLeftMargin(79.37008f);oWordPage.SetRightMargin(73.70078f);oWordPage.SetGutter(0.0f);oWordPage.SetHeaderDistance(42.51968f);oWordPage.SetFooterDistance(49.6063f);oWordPage.SetPageWidth(595.2756f);oWordPage.SetPageHeight(841.8898f);oWordPage.SetFirstPageTray(0l);oWordPage.SetOtherPagesTray(0l);oWordPage.SetSectionStart(2l);oWordPage.SetOddAndEvenPagesHeaderFooter(0l);oWordPage.SetDifferentFirstPageHeaderFooter(0l);oWordPage.SetVerticalAlignment(0l);oWordPage.SetSuppressEndnotes(0l);oWordPage.SetMirrorMargins(0l);oWordPage.SetTwoPagesOnOne(0l);oWordPage.SetBookFoldPrinting(0);oWordPage.SetBookFoldPrintingSheets(1l);oWordPage.SetGutterPos(0l);oWordPage.SetLayoutMode(2l);oWordDoc.Save();oWordPage.ReleaseDispatch();oWordFont.ReleaseDispatch();oWordParFor.ReleaseDispatch();oWordSel.ReleaseDispatch();oWordDoc.Close(vOpt,vOpt,vOpt);oWordDoc.ReleaseDispatch();oWordDocs.ReleaseDispatch();}catch(...){}oWordApp.Quit(vOpt,vOpt,vOpt);oWordApp.ReleaseDispatch();


0 0
原创粉丝点击