Как заменить текст в документе PowerPoint (.ppt)? - PullRequest
3 голосов
/ 25 июня 2009

Какие есть решения? Я знаю только решения по замене файлов Закладки в Word (.doc) на Apache POI?

Существуют ли также возможности для изменения изображений, макетов, стилей текста в документах .doc и .ppt?

Я думаю о замене областей в документах Word и PowerPoint для массовой обработки.

Платформа: MS-Office 2003

Ответы [ 6 ]

3 голосов
/ 02 июля 2009

Это немного дорого, но Aspose.Slides - очень мощная библиотека для работы с файлами PowerPoint

3 голосов
/ 30 июня 2009

Каковы ограничения вашей платформы?

Очевидно, Apache POI поможет вам пройти хотя бы часть пути.

Собственные COM API от Microsoft довольно мощные и задокументированы здесь . Я бы порекомендовал использовать их, если а) вы не работаете в серверной (много пользователей, многопоточной) среде; б) у вас может быть установлена ​​правильная версия powerpoint на производственной машине; и c) вы можете кодировать против объектной модели COM.

2 голосов
/ 29 июня 2009

Если вы включите использование других костюмов Office в качестве опции, вот список возможных решений:

Используя POI, вы не можете редактировать формат файла .pptx, но вы не зависите от приложений, установленных в системе. Другие два варианта, напротив, используют другие приложения, но они определенно лучше подходят для презентаций. Кстати, OpenOffice лучше совместим со старыми форматами. Также, если вы используете UNO, у вас будет большой выбор языков, UNO существует для Java, C ++, Python и других языков.

1 голос
/ 05 июля 2009

Видимо, новые пользователи могут включать только одну ссылку на публикацию. Как хромает! :)

Вот еще одна ссылка, которую я хотел включить:

1 голос
/ 05 июля 2009

Я делал что-то подобное раньше: программный доступ к презентациям PowerPoint и манипулирование ими. Когда я делал это, все было на C ++ с использованием COM, но аналогичные принципы применимы к приложениям C # / VB .NET, поскольку они очень легко взаимодействуют с COM.

То, что вы ищете, называется моделью документов Office. По сути, приложения Office представляют свои документы программно, как деревья объектов, которые определяют их содержимое. Эти объекты доступны через API, и вы можете манипулировать ими, добавлять новые и выполнять любую другую обработку, какую захотите. Это чрезвычайно мощный; Вы можете использовать его для управления практически всеми аспектами документа. Но для его использования вам понадобится установка Office и Visual Studio.

Некоторые ссылки:

Надеюсь, это поможет!

1 голос
/ 30 июня 2009

Мой опыт не связан непосредственно с Power Point, но я фактически выполнил свой собственный генератор WordML (XML). Он а) убрал все зависимости от Word, б) был очень быстр в) и позволил мне создавать документы с нуля.

Но это было много работы, чтобы создать. И я только создавал реализацию только для записи.

Я не так хорошо знаком с Power Point, так что это предположение, но вы можете свернуть свое собственное, прочитав XML (Power Point 2003 ??) и / или взломав файл Office Open XML (zip XML) затем используйте XPath для манипулирования данными, а затем сохраните все обратно на диск.

Это не будет работать с более старыми файлами Power Point на основе OLE Compound Document.

...