Snap for 14796029 from c4b1365b5b92f9960ac122d94dedec742d90309a to 26Q2-release Change-Id: Ifb0298ddcdb41022f73496cf20e64c0690b5f86f
This project includes:
jipp-core is an IPP parser/builder for IPP packets.jipp-pdls converts rasterized documents into common page description languages (PCLm and PWG-Raster).jprint shows how jipp-core can be used to send a document to a printer.jrender shows how jipp-pdl can be used to convert a PDF to PCLm or PWG-Raster.jipp-core features:
What could I do with this?
The API is Java-compatible but implemented in Kotlin.
dependencies { compile 'com.hp.jipp:jipp-core:0.7.16' compile 'com.hp.jipp:jipp-pdl:0.7.16' // Only needed if transforming PDLs }
IppClientTransport or IppServerTransport (see example HttpIppClientTransport.java)IppPacket objects, e.g.:URI uri = URI.create("http://192.168.1.100:631/ipp/print"); IppPacket printRequest = IppPacket.printJob(uri) .putOperationAttributes(documentFormat.of("application/pdf"))) .build(); transport.sendData(uri, new IppPacketData(printRequest, new FileInputStream(inputFile)));
Demonstrates a simple print engine. To run:
# build the app ./gradlew jprint:build # unzip in the current directory unzip -o ./sample/jprint/build/distributions/jprint-*.zip # Use IPP to print a file to the supplied HTTP/IPP endpoint. # (The printer must natively support the supplied file type.) jprint-*/bin/jprint -p sample.pdf ipp://192.168.1.102:631/ipp/print
An example of rendering a PDF to PWG-Raster or PCLm. To run:
# build the app ./gradlew jrender:build # unzip in the current directory unzip -o ./sample/jrender/build/distributions/jrender-*.zip # Convert a PDF-file to PWG-Raster. jrender-*/bin/jrender sample.pdf sample.pwg # Convert a PDF-file to PCLm. jrender-*/bin/jrender sample.pdf sample.pclm
Until 1.0, APIs may still be changed in non-backwards-compatible ways. See HISTORY.md for more details.
jipp-core's only dependencies are JDK 8+ and the current Kotlin runtime.
To build, run ./gradlew build.
A full build of this project requires python (2.x) and dot to generate dependency graphs.