SetStructElemBBox
Tagged PDF, Accessibility
Description
在标记栈上当前打开的结构元素上设置 /BBox 属性(布局属性所有者);边界框将用户空间坐标中的矩形区域与结构元素相关联,供无障碍工具和重排引擎使用;等效于以 Owner=Layout、Name=BBox 以及空格分隔的坐标字符串调用 AddTagAttribute
Syntax
Delphi
Function TPDFlib.SetStructElemBBox(Left, Bottom, Right, Top: Double): Integer;
ActiveX
Function PDFlib::SetStructElemBBox(Left As Double, Bottom As Double, Right As Double, Top As Double) As Long
DLL
int DLSetStructElemBBox(int InstanceID, double Left, double Bottom, double Right, double Top);
Parameters
| Left | 在默认用户空间单位(磅,1/72 英寸)中,边界框的左侧边缘 |
|---|---|
| Bottom | 边界框的底边 |
| Right | 边界框的右侧边缘 |
| Top | 边界框的顶边缘 |
Return value
成功时返回 1;如果未打开任何文档或标记栈上当前未打开任何标记,则返回 0
Remarks
在 BeginTag 或 BeginTagEx 之后以及 EndTag 之前调用此函数;这些坐标遵循 PDF 默认坐标系,其中原点位于页面的左下角
/BBox 属性在 ISO 32000-1 §14.8.5.4(布局属性所有者)中定义;它对于 Figure、Form 和 Formula 结构元素类型特别有用
Example
var
ImgX, ImgY, ImgW, ImgH: Double;
begin
// Draw an image and tag it as a Figure with its bounding box
ImgX := 72; ImgY := 600; ImgW := 150; ImgH := 100;
PDFlib.BeginTag('Figure', 'Product photo', '', '');
PDFlib.SetStructElemBBox(ImgX, ImgY, ImgX + ImgW, ImgY + ImgH);
PDFlib.DrawImageMatrix(ImgID, ImgX, ImgY, ImgW, ImgH, 0);
PDFlib.EndTag;
end;