AcroPDF в Delphi - Как прокрутить? - PullRequest
1 голос
/ 22 марта 2010

В настоящее время я добавляю средство просмотра PDF в программу Delphi с использованием TAcroPDF. Моя проблема в том, что сенсорные экраны, которые должны показывать PDF, довольно маленькие, поэтому я хотел добавить большие кнопки для прокрутки.

Я думал, что мог бы использовать функцию ScrollBy (DeltaX, DeltaY), но функция прокручивает компонент внутри его контейнера вместо прокрутки самого документа.

Есть ли способ прокрутки документа PDF?

Ответы [ 3 ]

2 голосов
/ 22 марта 2010

Если вы готовы развернуть собственную программу просмотра, взгляните на Библиотека QuickPDF . У них есть функция RenderPageToStream, которая создаст надежное изображение вашего документа в одном из нескольких различных форматов, включая BMP, JPG и TIFF и другие. Это достойное решение, и я использовал его для печати довольно достоверных версий заполненных сканируемых правительственных форм и не получал жалоб от правительственных учреждений, куда я их отправил.

0 голосов
/ 21 марта 2012

есть другая версия официальной документации (справочник по API межкоммуникационной коммуникации) в формате PDF здесь .Он указывает следующий удобный метод для одновременной прокрутки и масштабирования:

SetZoomScroll

Устанавливает увеличение в соответствии с указанным значением и прокручиваетпросмотр страницы как по горизонтали, так и по вертикали в соответствии с указанными значениями.

Синтаксис void setZoomScroll (процент FLOAT, FLOAT слева, FLOAT вверху);

Я пробовалв .NET 3.5 с C # и VS2010 Express, и это работает довольно верно.

0 голосов
/ 22 марта 2010

Элементы управления браузером PDF доступны через интерфейс AxAcroPDFLib.AxAcroPDF (TAcroPDF - это просто pdf.ocx Wrapper), который обеспечивает, среди прочего, метод SetViewScroll.Это может быть путь.

К сожалению, официальная документация действительно отстой (например, страница для SetViewScroll фактически описывает SetViewRect ... wtf?), Выпридется провести некоторое тестирование ...

Другие методы, которые могут вас заинтересовать:

  • GotoFirstPage
  • GotoLastPage
  • GotoNextPage
  • GotoPreviousPage
  • SetCurrentPage
  • SetView
  • SetViewRect
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...