Getting Position and Size of TextFragment in PDF Documents
Environment
Version | Product | Author |
---|---|---|
2024.3.806 | RadPdfProcessing | Desislava Yordanova |
Description
Determining the precise location and size of a TextFragment in a PDF document is essential for various document processing tasks. A TextFragment
's position is accessible through its Position property, which returns a MatrixPosition
. This article outlines how to translate the MatrixPosition
into (x,y) coordinates and how to calculate the width and height of a TextFragment
.
This KB article also answers the following questions:
- How can I find the exact location of a text in a PDF document?
- What is the method to determine the dimensions of a text segment within a PDF file?
- How to use the
MatrixPosition
for locating text in a PDF document?
Solution
To obtain the (x,y) coordinates and the dimensions (width and height) of a TextFragment
, follow these steps:
-
Extract the (x,y) Coordinates:
Each
TextFragment
has aPosition
property of type MatrixPosition. TheMatrixPosition
object includes aMatrix
that exposesOffsetX
andOffsetY
properties. These properties represent the fragment's offset from the top-left corner of the PDF page.float offsetX = textFragment.Position.Matrix.OffsetX; float offsetY = textFragment.Position.Matrix.OffsetY;
-
Calculate the Size (Width and Height):
To determine the width and height of a
TextFragment
, leverage the measuring functionality of theBlock
object. First, insert theTextFragment
into aBlock
, and then use theMeasure
method to find its size.private static Size GetFragmentSize(TextFragment textFragment) { Block block = new Block(); block.Insert(textFragment); Size textFragmentSize = block.Measure(); return textFragmentSize; }
By following these steps, you can accurately locate a TextFragment
within a PDF document and determine its size, enabling enhanced document processing and manipulation capabilities.
Notes
- The
OffsetX
andOffsetY
values pinpoint the location relative to the top-left corner of the PDF page. - The
Measure
method of theBlock
object provides the width and height of the containedTextFragment
, facilitating precise layout and positioning operations.