uses Windows, SysUtils, Variants, Forms, ComObj, OleServer, WordXP;
...
...
...
function GetPowerPointText(fName: String): String;
var
PP, PRE, SLI: OleVariant;
i, j: Integer;
begin
Result:='';
// 파워포인트 어플리케이션 생성
try
PP:=CreateOleObject('PowerPoint.Application');
except
MessageBox(0,'PowerPoint가 설치되어 있지 않습니다.','Error',MB_OK);
Exit;
end;
// 읽어올 파일이 있는지 체크
if not FileExists(fName) then begin
MessageBox(0,'파일이 없습니다.','Error',MB_OK);
Exit;
end;
// 생성한 파워포인트 어플리케이션에서 파일을 읽음 = 프리젠테이션을 Open
PRE:=PP.Presentations.Open(fName,False,True,False);
// 슬라이드 하나하나 검사
for i:=1 to PRE.Slides.Count do begin
SLI:=PRE.Slides.Item(i);
// 하나의 슬라이드를 다시 프레임별로 나눠 검사
for j:=1 to SLI.Shapes.Count do begin
// 만약 해당 프레임이 텍스트를 가지고 있다면 추출
if (SLI.Shapes.Item(j).HasTextFrame) then
Result:=Result+#13#10+SLI.Shapes.Item(j).TextFrame.TextRange.Text;
Application.ProcessMessages;
end; // for j
end; // for i
// 해제
SLI:=Unassigned;
PRE:=Unassigned;
PP.Quit;
PP:=Unassigned;
end;
'Delphi' 카테고리의 다른 글
[Delphi] Windows 사운드 켜기/끄기, 볼륨조절 (0) | 2009.04.18 |
---|---|
[Delphi] 디버그 권한 얻어 OpenProcess (0) | 2009.04.18 |
[Delphi] MS Word 파일에서 텍스트 추출 (0) | 2009.04.18 |
[Delphi] MS Excel 문서 읽기 (0) | 2009.04.18 |
[Delphi] MAC Address 확인 (2) | 2009.04.18 |