// CodeGear C++Builder
// Copyright (c) 1995, 2025 by Embarcadero Technologies, Inc.
// All rights reserved

// (DO NOT EDIT: machine generated header) 'FPdfText.pas' rev: 36.00 (Windows)

#ifndef FPdfTextHPP
#define FPdfTextHPP

#pragma delphiheader begin
#pragma option push
#if defined(__BORLANDC__) && !defined(__clang__)
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member 
#endif
#pragma pack(push,8)
#include <System.hpp>
#include <SysInit.hpp>
#include <FPdfView.hpp>

//-- user supplied -----------------------------------------------------------

namespace Fpdftext
{
//-- forward type declarations -----------------------------------------------
//-- type declarations -------------------------------------------------------
typedef Fpdfview::FPDF_TEXTPAGE __cdecl (*TFPDFText_LoadPage)(Fpdfview::FPDF_PAGE page);

typedef void __cdecl (*TFPDFText_ClosePage)(Fpdfview::FPDF_TEXTPAGE text_page);

typedef int __cdecl (*TFPDFText_CountChars)(Fpdfview::FPDF_TEXTPAGE text_page);

typedef System::LongWord __cdecl (*TFPDFText_GetUnicode)(Fpdfview::FPDF_TEXTPAGE text_page, int index);

typedef Fpdfview::FPDF_PAGEOBJECT __cdecl (*TFPDFText_GetTextObject)(Fpdfview::FPDF_TEXTPAGE text_page, int index);

typedef int __cdecl (*TFPDFText_IsGenerated)(Fpdfview::FPDF_TEXTPAGE text_page, int index);

typedef int __cdecl (*TFPDFText_IsHyphen)(Fpdfview::FPDF_TEXTPAGE text_page, int index);

typedef int __cdecl (*TFPDFText_HasUnicodeMapError)(Fpdfview::FPDF_TEXTPAGE text_page, int index);

typedef double __cdecl (*TFPDFText_GetFontSize)(Fpdfview::FPDF_TEXTPAGE text_page, int index);

typedef System::LongWord __cdecl (*TFPDFText_GetFontInfo)(Fpdfview::FPDF_TEXTPAGE text_page, int index, void * buffer, System::LongWord buflen, int &flags);

typedef int __cdecl (*TFPDFText_GetFontWeight)(Fpdfview::FPDF_TEXTPAGE text_page, int index);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFText_GetFillColor)(Fpdfview::FPDF_TEXTPAGE text_page, int index, /* out */ System::LongWord &R, /* out */ System::LongWord &G, /* out */ System::LongWord &B, /* out */ System::LongWord &A);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFText_GetStrokeColor)(Fpdfview::FPDF_TEXTPAGE text_page, int index, /* out */ System::LongWord &R, /* out */ System::LongWord &G, /* out */ System::LongWord &B, /* out */ System::LongWord &A);

typedef float __cdecl (*TFPDFText_GetCharAngle)(Fpdfview::FPDF_TEXTPAGE text_page, int index);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFText_GetCharBox)(Fpdfview::FPDF_TEXTPAGE text_page, int index, double &left, double &right, double &bottom, double &top);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFText_GetLooseCharBox)(Fpdfview::FPDF_TEXTPAGE text_page, int index, /* out */ Fpdfview::FS_RECTF &rect);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFText_GetMatrix)(Fpdfview::FPDF_TEXTPAGE text_page, int index, /* out */ Fpdfview::FS_MATRIX &matrix);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFText_GetCharOrigin)(Fpdfview::FPDF_TEXTPAGE text_page, int index, double &x, double &y);

typedef int __cdecl (*TFPDFText_GetCharIndexAtPos)(Fpdfview::FPDF_TEXTPAGE text_page, double x, double y, double xTolerance, double yTolerance);

typedef int __cdecl (*TFPDFText_GetText)(Fpdfview::FPDF_TEXTPAGE text_page, int start_index, int count, System::WideChar * result);

typedef int __cdecl (*TFPDFText_CountRects)(Fpdfview::FPDF_TEXTPAGE text_page, int start_index, int count);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFText_GetRect)(Fpdfview::FPDF_TEXTPAGE text_page, int rect_index, double &left, double &top, double &right, double &bottom);

typedef int __cdecl (*TFPDFText_GetBoundedText)(Fpdfview::FPDF_TEXTPAGE text_page, double left, double top, double right, double bottom, System::WideChar * buffer, int buflen);

typedef Fpdfview::FPDF_SCHHANDLE __cdecl (*TFPDFText_FindStart)(Fpdfview::FPDF_TEXTPAGE text_page, Fpdfview::FPDF_WIDESTRING findwhat, System::LongWord flags, int start_index);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFText_FindNext)(Fpdfview::FPDF_SCHHANDLE handle);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFText_FindPrev)(Fpdfview::FPDF_SCHHANDLE handle);

typedef int __cdecl (*TFPDFText_GetSchResultIndex)(Fpdfview::FPDF_SCHHANDLE handle);

typedef int __cdecl (*TFPDFText_GetSchCount)(Fpdfview::FPDF_SCHHANDLE handle);

typedef void __cdecl (*TFPDFText_FindClose)(Fpdfview::FPDF_SCHHANDLE handle);

typedef Fpdfview::FPDF_PAGELINK __cdecl (*TFPDFLink_LoadWebLinks)(Fpdfview::FPDF_TEXTPAGE text_page);

typedef int __cdecl (*TFPDFLink_CountWebLinks)(Fpdfview::FPDF_PAGELINK link_page);

typedef int __cdecl (*TFPDFLink_GetURL)(Fpdfview::FPDF_PAGELINK link_page, int link_index, System::WideChar * buffer, int buflen);

typedef int __cdecl (*TFPDFLink_CountRects)(Fpdfview::FPDF_PAGELINK link_page, int link_index);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFLink_GetRect)(Fpdfview::FPDF_PAGELINK link_page, int link_index, int rect_index, double &left, double &top, double &right, double &bottom);

typedef Fpdfview::FPDF_BOOL __cdecl (*TFPDFLink_GetTextRange)(Fpdfview::FPDF_PAGELINK link_page, int link_index, /* out */ int &start_char_index, /* out */ int &char_count);

typedef void __cdecl (*TFPDFLink_CloseWebLinks)(Fpdfview::FPDF_PAGELINK link_page);

//-- var, const, procedure ---------------------------------------------------
static _DELPHI_CONST System::Int8 FPDF_MATCHCASE = System::Int8(0x1);
static _DELPHI_CONST System::Int8 FPDF_MATCHWHOLEWORD = System::Int8(0x2);
static _DELPHI_CONST System::Int8 FPDF_CONSECUTIVE = System::Int8(0x4);
}	/* namespace Fpdftext */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FPDFTEXT)
using namespace Fpdftext;
#endif
#pragma pack(pop)
#pragma option pop

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// FPdfTextHPP
