各位高手:
我想用DELPHI控制好WORD的页面,并实现预览功能,请问在DELPHI里能不能做到。
问题解决就结贴
我想用DELPHI控制好WORD的页面,并实现预览功能,请问在DELPHI里能不能做到。
问题解决就结贴
解决方案 »
- 为什么老说我的窗口没定义呀,晕
- 如何实现Label不输入文字就可以设置大小
- 请求版主增加图片功能,因为我们大家没有图片好多事情说不清的,支持我的就发贴。
- quickreport报表循环连续打印问题?
- 如何制作安排程序設定或新建ODBC連接????
- fastreport设计的报表在打印的时候如何让同一列中相同的内容只显示一次。
- 看到大家对我们的真诚的祝福,作为csdn的一员,极是感动!!!(三)(请斑竹手下留情,容我再表示心情)
- 如何在代码中注册OCX控件?
- 程序结构bde+odbc+access,机器用英文98format后,每装任何软件,程序执行出错,
- DELPHI 带不带原程序
- label2.caption='XXX'是如何用windows API来封装的?
- Delphi中使用OLE方法操作Excel--如何让导出的Excel第一列的属性为文本类型?
调用word的页面设置
uses ComObj;
procedure PageSetup(const DocFileName: string);
const
wdAlertsNone = $00000000;
wdDialogFilePageSetup = $000000B2;
var
Doc: OleVariant;
begin
try
try
Doc:= CreateOleObject('Word.Application');
Doc.DisplayAlerts := wdAlertsNone;
Doc.Documents.Open(DocFileName);
Doc.Dialogs.Item(wdDialogFilePageSetup).Show;
Doc.Visible := True;
Doc.ActiveDocument.Save;
except
end;
finally
end;
end;
begin
//MsWord.ActiveDocument.PageSetup.LineNumbering.Active := False;
//MsWord.ActiveDocument.PageSetup.Orientation :=0;// wdOrientPortrait;
MsWord.ActiveDocument.PageSetup.TopMargin := CentimetersToPoints(0.75);
MsWord.ActiveDocument.PageSetup.BottomMargin := CentimetersToPoints(0.2);
MsWord.ActiveDocument.PageSetup.LeftMargin := CentimetersToPoints(0.5);
MsWord.ActiveDocument.PageSetup.RightMargin := CentimetersToPoints(0.5);
MsWord.ActiveDocument.PageSetup.Gutter := CentimetersToPoints(0);
MsWord.ActiveDocument.PageSetup.HeaderDistance := CentimetersToPoints(1.27);
MsWord.ActiveDocument.PageSetup.FooterDistance := CentimetersToPoints(1.27);
//MsWord.ActiveDocument.PageSetup.PageWidth := CentimetersToPoints(21);
//MsWord.ActiveDocument.PageSetup.PageHeight := CentimetersToPoints(29.7);
//MsWord.ActiveDocument.PageSetup.FirstPageTray :=0;// wdPrinterDefaultBin;
//MsWord.ActiveDocument.PageSetup.OtherPagesTray :=0;// wdPrinterDefaultBin;
//MsWord.ActiveDocument.PageSetup.SectionStart :=2;// wdSectionNewPage;
//MsWord.ActiveDocument.PageSetup.OddAndEvenPagesHeaderFooter := False;
//MsWord.ActiveDocument.PageSetup.DifferentFirstPageHeaderFooter := False;
//MsWord.ActiveDocument.PageSetup.VerticalAlignment :=0;// wdAlignVerticalTop;
//MsWord.ActiveDocument.PageSetup.SuppressEndnotes := False;
//MsWord.ActiveDocument.PageSetup.MirrorMargins := False;
//MsWord.ActiveDocument.PageSetup.TwoPagesOnOne := False;
//MsWord.ActiveDocument.PageSetup.GutterPos :=0;// wdGutterPosLeft;
end; /code]
begin
//MsWord.ActiveDocument.PageSetup.LineNumbering.Active := False;
//MsWord.ActiveDocument.PageSetup.Orientation :=0;// wdOrientPortrait;
MsWord.ActiveDocument.PageSetup.TopMargin := CentimetersToPoints(0.75);
MsWord.ActiveDocument.PageSetup.BottomMargin := CentimetersToPoints(0.2);
MsWord.ActiveDocument.PageSetup.LeftMargin := CentimetersToPoints(0.5);
MsWord.ActiveDocument.PageSetup.RightMargin := CentimetersToPoints(0.5);
MsWord.ActiveDocument.PageSetup.Gutter := CentimetersToPoints(0);
MsWord.ActiveDocument.PageSetup.HeaderDistance := CentimetersToPoints(1.27);
MsWord.ActiveDocument.PageSetup.FooterDistance := CentimetersToPoints(1.27);
//MsWord.ActiveDocument.PageSetup.PageWidth := CentimetersToPoints(21);
//MsWord.ActiveDocument.PageSetup.PageHeight := CentimetersToPoints(29.7);
//MsWord.ActiveDocument.PageSetup.FirstPageTray :=0;// wdPrinterDefaultBin;
//MsWord.ActiveDocument.PageSetup.OtherPagesTray :=0;// wdPrinterDefaultBin;
//MsWord.ActiveDocument.PageSetup.SectionStart :=2;// wdSectionNewPage;
//MsWord.ActiveDocument.PageSetup.OddAndEvenPagesHeaderFooter := False;
//MsWord.ActiveDocument.PageSetup.DifferentFirstPageHeaderFooter := False;
//MsWord.ActiveDocument.PageSetup.VerticalAlignment :=0;// wdAlignVerticalTop;
//MsWord.ActiveDocument.PageSetup.SuppressEndnotes := False;
//MsWord.ActiveDocument.PageSetup.MirrorMargins := False;
//MsWord.ActiveDocument.PageSetup.TwoPagesOnOne := False;
//MsWord.ActiveDocument.PageSetup.GutterPos :=0;// wdGutterPosLeft;
end;