[fix] tests

This commit is contained in:
Andy Bunce 2025-06-04 11:59:13 +01:00
parent e6832289b6
commit 0ae74baba3
12 changed files with 133 additions and 132 deletions

View file

@ -1,28 +1,28 @@
# Pdfbox
A `BaseX` interface for the `Apache Pdfbox library` version 3.
The [Apache PDFBox® library](https://pdfbox.apache.org/) is an open source Java tool for working with PDF documents. This project allows creation of new PDF documents, manipulation of existing documents and the ability to extract content from documents.
> The [Apache PDFBox® library](https://pdfbox.apache.org/) is an open source Java tool for working with PDF documents. This project allows creation of new PDF documents, manipulation of existing documents and the ability to extract content from documents.
This interface is packaged in the [Expath](https://docs.basex.org/main/Repository#expath_packaging) format. The package includes the required Pdfbox jars.
A test suite is available and workflow actions run this on BaseX 10.7 and 11.7.
This interface is packaged in the [Expath XAR](https://docs.basex.org/main/Repository#expath_packaging) format. The package includes the required Pdfbox jars.
A test suite is available and workflow actions run these tests against BaseX 10.7 and 11.7.
> [!NOTE]
>Currently (v0.1.5) works with BaseX 9.7, but this may change with future versions.
>Currently (v0.3.6) works with BaseX 9.7, but this may change with future versions.
## Features
The features focus on extracting information from PDFs rather than creation or editing of PDFs.
### Supported
* read PDF page count.
* read any PDF outline and return as map(s) or XML.
* read pagelabels.
* read page text.
* save pdf page range to a new pdf.
* save image of rendered pdf page.
* open PDF with password
* read XMP metadata
* Page size information
* support for xs:base64Binary in function inputs and outputs to facilitate database and store usage.
* Read PDF page count.
* Read any PDF outline and return as map(s) or XML.
* Read pagelabels.
* Read page text.
* Save pdf page range to a new pdf.
* Create image of rendered pdf page.
* Open PDF with password.
* Read XMP metadata.
* Page size information.
* Datatype xs:base64Binary in function inputs and outputs to facilitate database and store usage.
### Not supported:
* creating PDFs with new content
@ -50,7 +50,7 @@ pdfbox:with-pdf("...path/to/pdf.pdf",
* `scripts/make-xar.xq` packages the required `jar`s and `xqm` files to a `xar` file in the `dist` folder.
The `package.json` is used/abused as a configuration source. Non standard information is held in the `expkg_zone58` section. This is experimental and may change.
The `package.json` is (ab)used as a configuration source. Non standard information is held in the `expkg_zone58` section. This is experimental and may change.
### Action support
The workflow `ci-basex.yaml` builds and tests the package. This can be used as an action on [github](https://github.com/features/actions), or on a local [gitea](https://docs.gitea.com/usage/actions/overview) installation.
The workflow `ci-basex.yaml` builds and tests the package. This can be used as an action on [github](https://github.com/features/actions), or on a local [gitea](https://docs.gitea.com/usage/actions/overview) or [forgejo](https://forgejo.org/) installation.