SetOutlineRemoteDestination
Оглавление
Описание
Настраивает элемент оглавления (закладку) на открытие другого PDF по щелчку
Можно задать номер стартовой страницы и различные размеры и позиции
Примечание: размер страниц целевого документа неизвестен, поэтому все позиции задаются в пунктах от левого нижнего угла открываемой страницы
Синтаксис
Delphi
Function TPDFlib.SetOutlineRemoteDestination(OutlineID: Integer; Const FileName: WideString; OpenPage, Zoom, DestType: Integer; PntLeft, PntTop, PntRight, PntBottom: Double; NewWindow: Integer): Integer;
ActiveX
Function PDFlib::SetOutlineRemoteDestination(OutlineID As Long, FileName As String, OpenPage As Long, Zoom As Long, DestType As Long, PntLeft As Double, PntTop As Double, PntRight As Double, PntBottom As Double, NewWindow As Long) As Long
DLL
int DLSetOutlineRemoteDestination(int InstanceID, int OutlineID, const wchar_t * 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); |