https://github.com/ititus/dds
DDS Image Reader
https://github.com/ititus/dds
dds imageio java javafx
Last synced: 5 months ago
JSON representation
DDS Image Reader
- Host: GitHub
- URL: https://github.com/ititus/dds
- Owner: iTitus
- License: mit
- Created: 2023-01-18T01:26:19.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2025-07-07T12:12:23.000Z (6 months ago)
- Last Synced: 2025-07-07T13:29:12.955Z (6 months ago)
- Topics: dds, imageio, java, javafx
- Language: Java
- Homepage:
- Size: 378 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# dds / ddsiio / ddsfx
[](https://github.com/iTitus/commons/blob/main/LICENSE)
[](https://github.com/iTitus/commons)
[](https://search.maven.org/search?q=g:%22io.github.ititus%22%20AND%20a:%22dds%22)
[](https://search.maven.org/search?q=g:%22io.github.ititus%22%20AND%20a:%22ddsiio)
[](https://search.maven.org/search?q=g:%22io.github.ititus%22%20AND%20a:%22ddsfx%22)
[](https://github.com/iTitus/commons/actions?query=workflow%3A%22Gradle+Build%22)
Read `dds` images (DirectDrawSurface), an image format made by Microsoft for DirectX.
Targets:
- `DdsFile` (`dds` module, basic routines to load a dds file into memory)
- Java `BufferedImage` (`ddsiio` module, this is the one you want)
- JavaFX `Image` (`ddsfx` module, obsolete starting with JavaFX 24)
Currently targeting Java 21+ and JavaFX 21+.
## dds
- contains the reading logic and api
## ddsiio
- adds dds support to `ImageIO` automatically
- this requires the `java.desktop` module
## ddsfx
> [!IMPORTANT]
> This module is no longer required as of JavaFX 24, one can use `ddsiio` instead!
> JavaFX will plug into `ImageIO` and use those providers automatically.
- adds dds support for JavaFX `Image`
- one needs to call `io.github.ititus.ddsfx.DdsFx.setup()` once to register the format
- this requires the `java.desktop` module (via `ddsiio`) and JavaFX
- JavaFX needs to be included separately, there is no transitive dependency
- if you have problems with duplicate JavaFX dependencies see https://github.com/openjfx/javafx-gradle-plugin/issues/65
- when including this in a modular build you will need to add the following compile and run options:
- `--add-export javafx.graphics/com.sun.javafx.iio=io.github.ititus.ddsfx`
- `--add-export javafx.graphics/com.sun.javafx.iio.common=io.github.ititus.ddsfx`