Мне сложно найти библиотеку Java 2D для разработки программы рисования.Java 2D-библиотека для программ рисования
Все библиотеки я нахожу, кажется, для:
- анимации
- Graphing
- игры
Ни одна из которых являются полезными для меня программа для рисования. (Этот конкретный проект в основном предназначен для веб-комиксов и печатных комиксов.)
Меня больше всего интересует то, что абстрагирует файл IO для изображений, которые практически слишком велики для загрузки в объект BufferedImage.
Инструменты Adobe, например, вероятно, не загружают в память целые 10MB (сжатые) файлы изображений в память - после распаковки это слишком большая физическая память, чтобы посвятить кеширование изображения (особенно если вы откроете десяток из них сразу) , поэтому в этих приложениях должна быть инфраструктура для управления файлами на диске и буферизация только актуальных областей памяти.
- Я предполагаю, что это, по крайней мере, есть подкласс изображения, который работает на точно так же, как BufferedImage в то время, абстрагируясь от того факта, что изображения приходит и уходит из файла, а не памяти.
- Дополнительная обложка, которая позволяет мне увеличивать масштаб прямоугольной области или уменьшать масштаб и буферизировать масштабированную видимую часть (для отображения ).
- Система наслаивания с режимами смешивания была бы супер-сладкой, хотя Я ожидаю, что мне придется ее самостоятельно построить.
Спасибо, Bredlow. К сожалению, код для StdDraw просто использует объекты BufferedImage, поэтому он не показал мне ничего, что я еще не знаю. Мне нужно что-то, что работает на высоком уровне, например BufferedImage, но это прямо для файла io для операций с краской. BufferedImage будет использоваться только для кэширования масштабированной части, а не для всего изображения, как оно используется в StdDraw. –