1

1 つのスライドを含む pptx ファイルがあります。スライドに図があります。C# コードを使用して、そのグラフをスライドから削除したいと考えています。それを行うための C# プログラムを作成しました。ソリューションを実行した後、変換された pptx ファイルを開くと、次のエラーが表示されます。

パワーポイントは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();
}
4

1 に答える 1

1

application.presentation.slides を使用してすべてのスライドをループし、slide.shapes コレクションの各形状について shape.type を確認できます。タイプが chart の場合、shape.delete を呼び出します

于 2012-07-17T16:59:56.787 に答える