Is there any JavaFX Image editor?

你。 提交于 2019-11-30 19:08:45

问题


I want to put a simple raster graphics editor into my JavaFX app.
It seems that it can't be done using javafx.scene.image.Image because the graphics object is read-only.
Can somebody point me how can I do this or maybe there are some classes that provide direct access to pixel map?

upd: it is not necessary for editor to respond quickly, so the suggestions a-la create hidden java.awt.Canvas, handle all the events on ImageView to draw on the canvas, create by some means an output stream from the canvas to create new javafx Image and put it to ImageView.


回答1:


You can use a JavaFX canvas to do this as shown in the Canvas Tutorial "Interacting with the User" section. You don't need a java.awt.Canvas.

You can take a snapshot of a canvas (or any other node) to create an image.

You can read a pixel map from an existing image using a PixelReader and write to an image's pixel map using a PixelWriter obtained from a WritableImage as shown in the ImageOps tutorials.

To write your resultant image to disk, convert it to a BufferedImage and write it out using ImageIO.

If you need it, there are samples of scaling images to a pixelated form (similar to the zoom function in Microsoft Paint): JavaFX ImageView without any smoothing.



来源:https://stackoverflow.com/questions/16209512/is-there-any-javafx-image-editor

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!