Офисный формат буфера обмена - PullRequest
6 голосов
/ 13 мая 2009

Если я копирую график из Excel (2007) и выбираю Специальную вставку в другом приложении Office, я вижу формат буфера обмена под названием «Графический объект Microsoft Office», который допускает другие настройки, чем расширенные метафайлы. Как мне создать такой объект буфера обмена из моего собственного (C ++) приложения, чтобы он получал первоклассную обработку из приложения Office?

Не так важно, чтобы данные диаграммы были связаны, как в приложениях Office - я просто хочу предложить другой вариант экспорта графиков.

ClipSpy сообщает о нескольких двоичных форматах, включая «Excel 2007 Internal Shape», «Embed Source» и «Art :: GVML ClipFormat». Я думаю, что они являются частными и частными, но если кто-то знает о документах, пожалуйста, дайте мне знать.

Ответы [ 2 ]

5 голосов
/ 13 мая 2009

На самом деле это zip-файл (данные начинаются с PK), если вы сохраните данные (используя ClipSpy ), вы сможете открыть его с помощью предпочитаемой вами программы zip .

Загляните внутрь, и вы обнаружите, что данные представляют собой открытый формат XML , который не слишком загадочный .

0 голосов
/ 13 мая 2009

Я бы предположил, что формат задокументирован в спецификации MS была выпущена как часть антимонопольного решения.

К сожалению, вам придется читать и пытаться понять их, они не симпатичны.

...