PDFium Component Docs

ObjectBounds Egenskap

Denna API-post behåller identifierare, signaturer, kodblock och PDF-termer i ursprunglig form.
Komponent: TPdf  ·  Enhet: PDFium
Tätt axeljusterad begränsningsrektangel för ett enskilt sidobjekt på aktuell sida, uttryckt i PDF:s användarutrymmeskoordinater efter att varje CTM och objektspecifik matris har tillämpats

Syntax

property ObjectBounds[Index: Integer]: TPdfRectangle; // read only

Beskrivning

En sidas PDF-innehållsström är en sekvens av sidobjekt: textrader, vektorbanor, rasterbilder, skuggningsmönster och inbäddade form XObjects (PDF 32000-1 § 8.2). ObjectBounds returnerar begränsningsrutan för objekt nummer Index på aktuell sida efter att PDFium har plattat ut CTM-stacken och objektets egen cm-matris, så rektangeln kan användas direkt för träffkontroll, maskbyggande eller beskärning av miniatyrbilder utan någon ytterligare matematik

Rektangeln använder den vanliga PDF-koordinatkonventionen — origo i sidans nedre vänstra hörn, enheter på 1/72 tum och Y växer uppåt — så Bottom < Top i ett välformat dokument. Wrappar PDFiums FPDFPageObj_GetBounds; anropet är O(1) i sig men går internt igenom varje konturhörn för banor, så det är klokt att cacha resultatet om du läser det många gånger per objekt

Giltigt intervall är 0 .. ObjectCount - 1 för sidan som för närvarande väljs av PageNumber. Om du läser ett index utanför intervallet returneras en nollrektangel. Kombinera denna egenskap med ObjectType för att avgöra objektets typ innan du läser ytterligare egenskaper per typ

Parametrar

IndexZero-based page-object index, 0 ≤ Index < ObjectCount.

Anmärkningar

Exempel

// Markera varje bildobjekt på aktuell sida.
var I: Integer;
var R: TPdfRectangle;
begin
  for I := 0 to Pdf1.ObjectCount - 1 do
  if Pdf1.ObjectType[I] = otImage then
  begin
    R := Pdf1.ObjectBounds[I];
    Memo1.Lines.Add(Format('bild %d: %.1f,%.1f - %.1f,%.1f (%.1fx%.1f pt)',
      [I, R.Left, R.Bottom, R.Right, R.Top,
       R.Right - R.Left, R.Top - R.Bottom]));
  end;
end;

Se även

ObjectCount, ObjectType, ObjectHandle, ObjectTransparent, PageNumber