# This file is auto-generated by alef — DO NOT EDIT. # alef:hash:4e15143f4af1ae8bafbdb1506ef057da924484c66a19483966333558ad437e75 # To regenerate: alef generate # To verify freshness: alef verify --exit-code # Issues & docs: https://github.com/kreuzberg-dev/alef defmodule Kreuzberg.OcrBoundingGeometry do @moduledoc """ Bounding geometry for an OCR element. Supports both axis-aligned rectangles (from Tesseract) and 4-point quadrilaterals (from PaddleOCR and rotated text detection). """ @typedoc "Bounding geometry for an OCR element." @type t :: term() @typedoc "Axis-aligned bounding box (typical for Tesseract output)." @type rectangle :: %{type: :rectangle, left: non_neg_integer(), top: non_neg_integer(), width: non_neg_integer(), height: non_neg_integer()} @typedoc "4-point quadrilateral for rotated/skewed text (PaddleOCR)." @type quadrilateral :: %{type: :quadrilateral, points: String.t()} end