Нам нужно открыть существующий файл pptx и добавить ссылку на внешнее изображение, мне все равно, где изображение вставлено (то же самое для документа xlsx). Мы успешно достигли этого с docx сейчас, но боремся с xlsx и pptx.
Вот код, который мы пытаемся использовать с документом pptx, но файл никогда не содержит ссылку на изображение.
MemoryStream memSource = new MemoryStream(System.IO.File.ReadAllBytes(@"C:\AttachmentDocuments\Presentation_1.01.pptx"));
memSource.CopyTo(mem);
{
using (var ppt = PresentationDocument.Open(mem, true))
{
ppt.ChangeDocumentType(DocumentFormat.OpenXml.PresentationDocumentType.Presentation);
PresentationPart presPart = ppt.PresentationPart;
presPart.PresentationPropertiesPart.AddExternalRelationship("http://schemas.openxmlformats.org/officeDocument/2006/relationships/attachedTemplate",
new System.Uri(@"https://" + Domain + @"/" + UID, System.UriKind.Absolute));
presPart.Presentation.Save();
ppt.SaveAs(@"C:\AttachmentDocuments\Presentation2.pptx");
ppt.Close();
}
}
Достаточно много советов для файлов docx, но для xlsx и pptx он кажется слишком скудным, поэтому любая помощь очень ценится.