SetOutlineRemoteDestinationA
Оглавление
Описание
Суффикс A обозначает точку входа DLL ANSI (char); интерфейс ActiveX/COM предоставляет только вариант Unicode. Поведение идентично SetOutlineRemoteDestination, а строковые аргументы интерпретируются с использованием текущей кодовой страницы SetAnsiMode
Настраивает элемент оглавления (закладку) на открытие другого PDF по щелчку
Можно задать номер стартовой страницы и различные размеры и позиции
Примечание: размер страниц целевого документа неизвестен, поэтому все позиции задаются в пунктах от левого нижнего угла открываемой страницы
Синтаксис
Delphi
Function DLSetOutlineRemoteDestinationA(InstanceID, OutlineID: Integer; FileName: PAnsiChar; OpenPage, Zoom, DestType: Integer; PntLeft, PntTop, PntRight, PntBottom: Double; NewWindow: Integer): Integer;
DLL
int DLSetOutlineRemoteDestinationA(int InstanceID, int OutlineID, const char * FileName, int OpenPage, int Zoom, int DestType, double PntLeft, double PntTop, double PntRight, double PntBottom, int NewWindow);
Параметры
OutlineID
Идентификатор раздела оглавления, возвращаемый функцией NewOutline. Либо получите корректный идентификатор функцией GetOutlineID
FileName
Имя PDF-документа, открываемого по щелчку на разделе оглавления. Путь задаётся в особом формате: обратные слэши заменяются прямыми, а диск, если есть, указывается буквой между прямыми слэшами без двоеточия. Например, файл "c:\my documents\hello.pdf" записывается как "/c/my documents/hello.pdf". Относительные пути допустимы, в том числе с оператором ".." для перехода на каталог выше
OpenPage
Номер страницы, открываемой при открытии целевого документа; первая страница имеет индекс 0
Zoom
Масштаб документа при открытии в процентах, допустимые значения от 0 до 6400. Используется только при DestType = 1, для остальных DestType должен быть 0
DestType
1 = "XYZ" — целевая страница позиционируется в точке, заданной параметрами Left и Top; параметр Zoom задаёт масштаб в процентах
2 = "Fit" — вся страница вписывается в окно; остальные параметры не используются и должны быть равны нулю
3 = "FitH" — страница масштабируется так, чтобы вся её ширина была видна; высота страницы может быть больше или меньше высоты окна. Страница позиционируется по вертикали согласно параметру Top
4 = "FitV" — страница масштабируется так, чтобы вся её высота была видна; ширина страницы может быть больше или меньше ширины окна. Страница позиционируется по горизонтали согласно параметру Left
5 = "FitR" — страница масштабируется так, чтобы был виден заданный прямоугольник; параметры Left, Top, Right и Bottom определяют эту область на странице
6 = "FitB" — страница масштабируется так, чтобы был виден её ограничивающий прямоугольник
7 = "FitBH" — страница позиционируется по вертикали согласно параметру Top и масштабируется так, чтобы вся ширина ограничивающего прямоугольника была видна
8 = "FitBV" — страница позиционируется по горизонтали согласно параметру Left и масштабируется ровно настолько, чтобы вся высота ограничивающего прямоугольника поместилась в окно
PntLeft
Горизонтальная позиция, используемая при DestType = 1, 4, 5 и 8. Позиция в пунктах от левого нижнего угла страницы целевого документа
PntTop
Вертикальная позиция, используемая при DestType = 1, 3, 5 и 7. Позиция в пунктах от левого нижнего угла страницы целевого документа
PntRight
Горизонтальная позиция правой стороны прямоугольника; используется при DestType = 5. Позиция в пунктах от левого нижнего угла страницы целевого документа
PntBottom
Горизонтальная позиция нижней стороны прямоугольника; используется при DestType = 5. Позиция в пунктах от левого нижнего угла страницы целевого документа
NewWindow
0 = заменить текущий документ целевым
1 = попросить просмотрщик открыть целевой документ в новом окне, если пользователь не задал иное в настройках
Возвращаемые значения
| 0 | Недопустимый OutlineID |
|---|---|
| 1 | Переход раздела оглавления задан успешно double PntBottom, int NewWindow); |