0
PowerPoint 문서 한 장을 복제하고 OpenXML을 사용하여 같은 문서에 삽입하고 싶습니다.이미지가있는 새 PowerPoint 슬라이드를 복제하지 못했습니다.
public static void AddNewSlide(PresentationPart parent, Slide _slideTemplate, string newId)
{
var newSlidePart = parent.AddNewPart<SlidePart>(newId);
newSlidePart.FeedData(_slideTemplate.SlidePart.GetStream(FileMode.Open));
newSlidePart.AddPart(_slideTemplate.SlidePart.SlideLayoutPart, _slideTemplate.SlidePart.GetIdOfPart(_slideTemplate.SlidePart.SlideLayoutPart));
newSlidePart.Slide.Save();
DocumentFormat.OpenXml.Presentation.SlideIdList slideIdList = parent.Presentation.SlideIdList;
uint maxSlideId = 1;
foreach (DocumentFormat.OpenXml.Presentation.SlideId slideId in slideIdList.ChildElements)
{
if (slideId.Id > maxSlideId) maxSlideId = slideId.Id;
}
DocumentFormat.OpenXml.Presentation.SlideId newSlideId = new DocumentFormat.OpenXml.Presentation.SlideId { Id = ++maxSlideId, RelationshipId = parent.GetIdOfPart(newSlidePart) };
slideIdList.Append(newSlideId);
}
오리지널 슬라이드 그냥 텍스트가 포함 된 경우, 그것은 잘 작동하지만, 오리지널 슬라이드가 너무 이미지를 contans 때, 그 결과 파워 포인트 문서가 손상 BW합니다 :이를 위해, 나는 다음과 같은 기능을 사용하고 있습니다. 새 슬라이드의 이미지는 "이 이미지를 현재 표시 할 수 없습니다."라는 메시지 만 표시됩니다.
이미지가있는 슬라이드를 복제하는 데 도움이됩니다. 미리 감사드립니다.
이것은 완벽하게 작동했습니다. –