2010-02-24 5 views
1

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

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

Edit: :

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

[1] PDF Libraries to Display a PDF document in WPF

+0

Возможный дубликат [Win32: отображение PDF] (http://stackoverflow.com/questions/2330336/win32-displaying-pdf) – dns

ответ

1

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

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

+0

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

+0

@Lars. Я уверен, что вы не можете автоматизировать Adobe Reader вообще. Для этого вам понадобится сторонний плагин. – Nifle

+0

Что вы подразумеваете под «третьей стороной»? Плагин для Acrobat? Что, в свою очередь, контролируется моим приложением? –

1

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

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

Плагин, вероятно, является технологией, называемой ActiveX.