ImageBoss for Java

Use our official Java URL builder, imageboss-java, to generate optimized ImageBoss URLs from your Java applications. It supports operations (resize, cover, CDN), options (like format:auto), signed URLs, and srcset generation.


Installation

Gradle (Kotlin DSL)

dependencies {
    implementation("me.imageboss:imageboss-java:1.0.0")
}

Maven

<dependency>
  <groupId>me.imageboss</groupId>
  <artifactId>imageboss-java</artifactId>
  <version>1.0.0</version>
</dependency>

Basic usage

Create an ImageBossClient with your ImageBoss source (from your dashboard) and then build URLs using operations and options:


import me.imageboss.ImageBossClient;
import me.imageboss.Operation;
import me.imageboss.Option;

public class ImageBossExample {
    public static void main(String[] args) {
        ImageBossClient client = ImageBossClient.newBuilder("mywebsite-images").build();

        String url = client.createUrl(
            "examples/02.jpg",
            Operation.cover(300, 300),
            Option.formatAuto()
        );
        System.out.println(url);
        // https://img.imageboss.me/mywebsite-images/cover/300x300/format:auto/examples/02.jpg
    }
}

Signed URLs

To sign URLs, configure your client with a secret (from the Security docs):

import me.imageboss.ImageBossClient;
import me.imageboss.Operation;

ImageBossClient client = ImageBossClient.newBuilder("mysecureimages")
    .secret("<YOUR_SECRET>")
    .build();

String url = client.createUrl("width/500/01.jpg", Operation.cdn());
// https://img.imageboss.me/mysecureimages/cdn/width/500/01.jpg?bossToken=...

Srcset generation

The library can also generate responsive srcset attributes for fixed- and fluid-width images:

ImageBossClient client = ImageBossClient.newBuilder("mywebsite-images").build();

// Fixed-dimension (DPR) srcset
String dprSrcset = client.createDprSrcset(
    "examples/02.jpg",
    Operation.cover(300, 300),
    true // variable quality
);

// Fluid-width srcset
String widthSrcset = client.createWidthSrcset(
    "examples/02.jpg",
    Operation.cdn(),
    300,   // min width
    1600,  // max width
    0.08   // width tolerance
);

See the full documentation and advanced examples (fixed-width, DPR-based srcsets, custom widths, and more) in the imageboss-java README.



Questions?

If you have any questions please don't hesitate, send us a message on support[at]imageboss.me.