델파이 시애틀, PPT 2013.델파이 - Microsoft PowerPoint 통합 ... 설정 굵게 속성
프로그래밍 방식으로 PPT 데크를 작성하고 있습니다. 내가 사용하고있는 PPT 템플릿이 있습니다. 실행 파일에 리소스로 포함 된 PPT 파일을 추출하고, PPT를 시작하고, 파일을 열고, 슬라이드로 이동하여 내용을 채 웁니다. 현재 내가 싸우고있는 문제는 글꼴 속성과 관련이 있습니다. 텍스트 프레임이 있습니다. 그 텍스트 프레임에 CR/LF로 구분 된 여러 줄을 쓰려고합니다. PPT는 이것들이 내가 원하는 바른 구분 점임을 보여줍니다. 각 줄의 첫 번째 단어는 범주이므로 JUST THAT WORD가 굵게 표시됩니다.
코드에서, 나는 textframe에 첫 번째 줄을 추가 제품 3, product4입니다 - 제품 1, 제품 2
- 카테고리 1 ...이처럼 보이는 끝낼한다 , 그리고 말하기 ... 문자 1-9에서 대담하게 설정하십시오. 이제 텍스트 프레임에 두 번째 줄을 추가하고 20 자에서 다음 9자를 굵게 ... 등으로 설정합니다. 이것은 4 줄의 작업입니다. 첫 번째 줄을 추가하고 굵게 설정하고 두 번째 줄을 추가하고 굵게 설정하십시오. 줄 1과 2는 작동하지만 두 번째 줄을 추가하자마자 모든 것이 굵게 표시됩니다. 내 코드의 순서를 변경하면 1 행을 추가하고 2 행을 추가하고 첫 번째 하위 문자열을 굵은 글꼴로 설정하고 두 번째 하위 문자열을 굵은 글꼴로 설정하면 효과가 있지만 여러 가지 다른 작업을 수행하는 방법에 따라 어려워집니다.
줄 1을 추가하고 문자 1에서 9를 굵게 설정하고 문자 10을 굵게 설정하지 말고 지금 2 줄을 추가하려고 시도했지만 아무런 차이가없는 것 같습니다.
다음은 코드 단편입니다.
uses ... Office2000, msppt2000; var lFinalDeck: PowerPointPresentation; lApplication: PowerPointApplication; sl: _Slide; sh1 : Shape; FoundIt : Boolean; i : Integer; CRLF : String; PPTFileName : String; begin lApplication := CoPowerPointApplication.Create; ... // Open File lFinalDeck := lApplication.Presentations.Open(PPTFileName, msoFalse, msoFalse, msoFalse); // The second parameter specifies whether the presentation should be opened in read-only mode. // If the third parameter is True, an untitled copy of the file is made. // The last parameter specifies whether the opened presentation should be visible. // Get a handle to my slide and go to it. sl := lFinalDeck.Slides.Item(2); sl.Select; FoundIt := False; CRLF := #13#10; // Now look for the textframe that has the TEXT 'TEXTBOX1' for i := 1 to sl.Shapes.Count do begin sh1 := sl.Shapes.Item(i); if sh1.HasTextFrame = msoTrue then if sh1.TextFrame.TextRange.Text = 'TEXTBOX1' then begin FoundIt := True; sh1.TextFrame.TextRange.Text := ''; Break; end; end; // Put data in the textframe, setting first 5 characters of each line bold sh1.TextFrame.TextRange.Text := '1234567890' + CRLF; sh1.TextFrame.TextRange.Characters(1,5).Font.Bold := msoTrue; sh1.TextFrame.TextRange.Text := sh1.TextFrame.TextRange.Text + 'ABCDEFGHIJKLMNOP' + CRLF; sh1.TextFrame.TextRange.Characters(13,5).Font.Bold := msoTrue; end;
어떤 문제를 해결할 수 있습니까?
이 얼마나 일반적으로 행동하라에서 파워 포인트, 오피스 프로그램 , 나는 믿는다. 새 단락을 추가 할 때 이전 단락의 글꼴을 사용합니다.이 단락은 때때로 수동으로 수행하는 경우에도 약간의 고통입니다. 내가 제안 할 수있는 유일한 방법은 새 파라를 삽입하고 명시 적으로 굵게 글꼴을 설정하거나 선택을 추가하고 굵은 체로 설정하는 텍스트 선택을 설정하는 것입니다. 아마도 별도의 절차로 사물을 단순화 할 수 있습니다 당신이 그것을 여러 번 할 때. – Dsm
'나는 그저 굵은 글씨로 말하고 싶다. '- 당신이 마이크로 소프트 오피스에서 일하기 때문에 거의 모든 질문에 대해 보편적 인 대답이 나온다. "Visual Basic 매크로 기록"을 시작하십시오. 그런 다음 단어를 선택하고 굵은 글씨로 만들고 선택을 해제하십시오.그런 다음 "매크로 기록 중지". 그런 다음 매크로 관리자를 열고 새 매크로를 찾아 편집기로 들어갑니다. Visual Basic 코드가 표시됩니다. 기본에서 파스칼로 변환하십시오. 추신. 해당 매크로 관련 명령이 Office 2013에서 숨겨진 곳을 알 수 없습니다. Office 시험판의 클래식 메뉴를 찾을 수없는 경우 –
레코드 매크로 기능은 대부분 Office 제품이지만 Powerpoint는 아닙니다. 파워 포인트 2007은 마지막 버전이었습니다 ... – user1009073