2012-05-06 2 views
1

하나의 슬라이드가있는 pptx 파일이 있습니다. 슬라이드에 차트가 있습니다. C# 코드를 사용하여 슬라이드에서 해당 차트를 삭제하고 싶습니다. 나는 그것을하기 위해 C# 프로그램을 작성했다. 솔루션을 실행 한 후 변환 된 pptx 파일을 열 때; 이 오류가 발생합니다 :파워 포인트의 슬라이드에서 차트를 삭제하는 방법

powerpoint removed unreadable content in test2

내 C# 코드는 다음과 같습니다.

string pptxFileNameTemplate = "D:\\test.pptx"; 
string pptxFileNameGenerate = "D:\\test2.pptx"; 

File.Copy(pptxFileNameTemplate, pptxFileNameGenerate, true); 
using (PresentationDocument presentationDocument = PresentationDocument.Open(pptxFileNameGenerate, true)) 
{ 
    PresentationPart presentationPart = presentationDocument.PresentationPart; 
    List<SlidePart> slideParts = new List<SlidePart>(); 
    presentationPart.GetPartsOfType<SlidePart>(slideParts); 
    SlidePart slp = slideParts[0]; 
    List<ChartPart> chartParts = new List<ChartPart>(); 
    slp.GetPartsOfType<ChartPart>(chartParts); 
    ChartPart cp = chartParts[0]; 
    string chartPartIdBookMark = slp.GetIdOfPart(cp); 
    slp.DeletePart(chartPartIdBookMark); 
    slp.Slide.Save(); 
    presentationDocument.Close(); 
} 

답변

1

할 수 있습니다 루프 형 차트 호출 shape.delete

경우, shape.type을 확인 application.presentation.slides 및 slide.shapes 컬렉션에서 각 셰이프를 사용하여 모든 슬라이드
관련 문제