Class CharInfoCollection

CharInfoCollection-Klasse

Stellt eine Sammlung von CharInfo-Objekten dar.

public sealed class CharInfoCollection : ICollection<CharInfo>

Eigenschaften

NameBeschreibung
Count { get; }Gibt die Anzahl der tatsächlich in der Sammlung enthaltenen CharInfo Objektelemente zurück.
IsReadOnly { get; }Gibt einen Wert zurück, der angibt, ob die Sammlung schreibgeschützt ist.
IsSynchronized { get; }Gibt einen Wert zurück, der angibt, ob der Zugriff auf die Sammlung synchronisiert ist (thread-sicher).
Item { get; }Gibt das CharInfo-Element am angegebenen Index zurück.
SyncRoot { get; }Gibt ein Objekt zurück, das verwendet werden kann, um den Zugriff auf die Sammlung zu synchronisieren.

Methoden

NameBeschreibung
Add(CharInfo)Sammlung ist schreibgeschützt, wirft NotImplementedException.
Clear()Sammlung ist schreibgeschützt. Wirft immer NotImplementedException.
Contains(CharInfo)Bestimmt, ob die Sammlung einen bestimmten Wert enthält.
CopyTo(CharInfo[], int)Kopiert die gesamte Sammlung in ein kompatibles eindimensionales Array, beginnend am angegebenen Index des Zielarrays.
GetEnumerator()Gibt einen Enumerator für die gesamte Sammlung zurück.
Remove(CharInfo)Sammlung ist schreibgeschützt, wirft NotImplementedException.

Bemerkungen

Bietet Zugriff auf Positionsinformationen der Zeichen von Textsegmenten.

Beispiele

Das Beispiel zeigt, wie man durch alle Zeichen iteriert und das Zeichen abruft.

//open document
Document pdfDocument = new Document(inFile);
//create TextFragmentAbsorber object to collect all the text objects of the page
TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber();
//accept the absorber for all the pages
pdfDocument.Pages[1].Accept(textFragmentAbsorber);
//get the extracted text fragments
TextFragmentCollection textFragmentCollection = textFragmentAbsorber.TextFragments;
            
//loop through the fragments
foreach (TextFragment textFragment in textFragmentCollection)
{
    //loop through the segments
    foreach (TextSegment textSegment in textFragment.Segments)
    {
        //loop through the characters
        for (int i = 1; i <= textSegment.Text.Length; i++)
        {
            CharInfo charInfo = textSegment.Characters[i];

            // print character position and rectangle info
            Console.WriteLine("XIndent : {0} ", charInfo.Position.XIndent);
            Console.WriteLine("YIndent : {0} ", charInfo.Position.YIndent);
            Console.WriteLine("Width : {0} ", charInfo.Rectangle.Width);
            Console.WriteLine("Height : {0} ", charInfo.Rectangle.Height);
        }
    }
}

Siehe auch