git: 82147881288c - main - graphics/py-pdfplumber: New port: Plumb a PDF for detailed information about each char, rectangle, line

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Thu, 09 Jul 2026 05:20:22 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=82147881288c01a79df26c38d42c7860f6aec133

commit 82147881288c01a79df26c38d42c7860f6aec133
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2026-07-09 01:02:43 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2026-07-09 05:20:14 +0000

    graphics/py-pdfplumber: New port: Plumb a PDF for detailed information about each char, rectangle, line
---
 graphics/Makefile                |  1 +
 graphics/py-pdfplumber/Makefile  | 28 ++++++++++++++++++++++++++++
 graphics/py-pdfplumber/distinfo  |  3 +++
 graphics/py-pdfplumber/pkg-descr |  4 ++++
 4 files changed, 36 insertions(+)

diff --git a/graphics/Makefile b/graphics/Makefile
index d850d50c8bd0..cef105ca7687 100644
--- a/graphics/Makefile
+++ b/graphics/Makefile
@@ -1000,6 +1000,7 @@
     SUBDIR += py-pandarm
     SUBDIR += py-pdf2image
     SUBDIR += py-pdfminer-six
+    SUBDIR += py-pdfplumber
     SUBDIR += py-photocollage
     SUBDIR += py-piexif
     SUBDIR += py-pillow
diff --git a/graphics/py-pdfplumber/Makefile b/graphics/py-pdfplumber/Makefile
new file mode 100644
index 000000000000..52b8dd888641
--- /dev/null
+++ b/graphics/py-pdfplumber/Makefile
@@ -0,0 +1,28 @@
+PORTNAME=	pdfplumber
+PORTVERSION=	0.11.10
+CATEGORIES=	graphics python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Plumb a PDF for detailed information about each char, rectangle, line
+WWW=		https://github.com/jsvine/pdfplumber
+
+LICENSE=	MIT
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pdfminer-six>0:graphics/py-pdfminer-six@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pillow>0:graphics/py-pillow@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pypdfium2>0:graphics/py-pypdfium2@${PY_FLAVOR}
+
+USES=		python
+USE_PYTHON=	autoplist concurrent pep517
+NO_ARCH=	yes
+
+post-extract:
+	@${REINPLACE_CMD} -e 's/Pillow>=12\.2\.0/Pillow>=0/' \
+		-e 's/pypdfium2>=5\.9\.0/pypdfium2>=0/' \
+		${WRKSRC}/setup.cfg ${WRKSRC}/requirements.txt
+
+.include <bsd.port.mk>
diff --git a/graphics/py-pdfplumber/distinfo b/graphics/py-pdfplumber/distinfo
new file mode 100644
index 000000000000..6a9f88f2643e
--- /dev/null
+++ b/graphics/py-pdfplumber/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1783064072
+SHA256 (pdfplumber-0.11.10.tar.gz) = b95b2d28c66efb0a794a83b88c6c6aea5987532a445d20a1cbcfa657022e6e57
+SIZE (pdfplumber-0.11.10.tar.gz) = 102892
diff --git a/graphics/py-pdfplumber/pkg-descr b/graphics/py-pdfplumber/pkg-descr
new file mode 100644
index 000000000000..ed75b4d374b2
--- /dev/null
+++ b/graphics/py-pdfplumber/pkg-descr
@@ -0,0 +1,4 @@
+pdfplumber extracts detailed information from PDF files, including
+character positions, rectangle coordinates, and line geometry. It
+provides a high-level API for PDF content extraction, table detection,
+and visual debugging of PDF layouts, built on top of pdfminer.six.