Является ли altChunk допустимым в PresentationML? - PullRequest
2 голосов
/ 08 декабря 2011

Допустимо ли использовать элемент altChunk в любом из XML-файлов слайдов в пакете pptx ooxml?

Я прочитал спецификацию ECMA-376, и хотя altChunk определен в разделе WordprocessingML спецификации (например: «Любая часть документа, которая разрешает элемент ap, также может содержать элемент altChunk, атрибут id которого относится к отношению "), больше нигде не упоминается.

PresentationML, по-видимому, не имеет элемента ap и других допустимых родительских элементов для AltChunk (body (§17.2.2); comment (§17.13.4.2); docPartBody (§17.12.6); endnote (§17.11. 2); сноска (§17.11.10); ftr (§17.10.3); hdr (§17.10.4); tc (§17.4.66)), по-видимому, недействительны в PresentationML.

Мои попытки использовать altChunk в XML-файле слайда (с должным образом проверенными записями в соответствующем файле rels) привели к неверному XML: PPT2010 предлагает восстановить файл, и этот замечательный инструмент http://www.probatron.org:8080/officeotron/officeotron.html предлагает номер различных ошибок (например: «Обнаружено недопустимое содержимое, начиная с элемента« p: altChunk ».» или «Ожидается одна из {{* http://schemas.openxmlformats.org/drawingml/2006/main":p}'»)), в зависимости от того, где я размещаю элемент altChunk.

(FWIW, настоящая проблема, которую я пытаюсь решить, - включить какой-то базовый HTML-код в слайд ppt.)

1 Ответ

0 голосов
/ 09 декабря 2011

Чего вы хотите добиться, включив HTML-код в слайд?

Если вам просто нужно сохранить его (или любой другой текст), вы можете использовать теги.Я не знаю, как они реализованы в XML, но вы можете добавить один из них через немного VBA и посмотреть, что появляется в XML:

Sub AddTagToSlide()
With ActivePresentation.Slides(1)
  .Tags.Add "ThisIsTheTagName", "ThisIsTheTagValue"
End With

' Did it work?  How do we retrieve a tag?
With ActivePresentation.Slides(1)
  MsgBox .Tags("ThisIsTheTagName")
End With
End Sub

Вы можете добавить столько тегов, сколько захотите, кПомимо прочего, объект презентации, объекты Slide и объекты Shape.Там нет интерфейса для тегов, поэтому они не видны пользователям.

...