Win32 и Acrobat - PullRequest
       6

Win32 и Acrobat

1 голос
/ 25 февраля 2010

У меня есть простое приложение Win32, написанное на C, в котором я хотел бы открыть PDF-файлы. Я знаю, что могу скомпилировать и связать библиотеку Poppler, но есть ли способ использовать Acrobat Reader? Вроде как, что делают браузеры, если у вас установлен Reader, они автоматически могут отображать PDF в окне через некоторый интерфейс плагина. Проблема в том, что я никогда не использовал плагин, не писал такой интерфейс. Как? Можно ли впоследствии установить Reader и каким-то образом уведомить приложение о его наличии?

Я также хотел бы контролировать, скажем, увеличение. И то, что PDF может быть в памяти, а также.

Edit:

Я только что нашел это [1]: «Если вы установили Adobe Reader, вы можете добавить ссылку COM в элемент управления ActiveX средства просмотра PDf в VisualStudio и использовать его внутри элемента управления WindowsFormsHost». но я не понимаю, что там написано: как создать «ссылку COM» и использовать «WindowsFormsHost» в простом Win32 C?

[1] Библиотеки PDF для отображения документа PDF в WPF

Ответы [ 2 ]

1 голос
/ 25 февраля 2010

В дополнение к тому, что сказал Nifle, если вместо запуска его как отдельного приложения вы хотите запустить Acrobat Reader как плагин в окне вашего приложения (как, например, IE запускает его в окне IE), Adobe Acrobat Reader страница загрузки говорит,

Элемент управления ActiveX для Internet Explorer и плагин для Netscape Navigator включены и автоматически устанавливаются в выбранном вами браузере.

Технология подключаемых модулей, вероятно, называется технологией ActiveX .

.
1 голос
/ 25 февраля 2010

В Windows, если вы наберете mypdf.pdf и нажмете клавишу возврата в командной строке, откроется PDF-файл в соответствующем приложении (в большинстве случаев Adobe Reader) . Таким образом, в C # я запускаю новый процесс с PDF в качестве файла для запуска .

Вы должны быть в состоянии сделать что-то подобное в c, не беспокоясь о плагинах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...