Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: GUI и Java FX приложения > Сохранение в формате JPG


Автор: 4epT 26.5.2009, 14:04
Добрый день. Пишу программу Paint. Создал класс Panel унаследованные от JPanel. На этой панельки и рисую ... обычные линии, прямоугольники овалы ... Как можно сохранить рисунок (тот что я нарисовал) в формате jpg ? чтобы его потом можно было открыть через обычную программу просмотра изображений ?

Автор: math64 26.5.2009, 14:34
Код

    BufferedImage bim = new BufferedImage(imageWidth, imageHeight, BufferedImage.TYPE_INT_RGB);
    Graphics2D g2d = bim.createGraphics();
    // Рисуем
    try {
      String fileName = file.getName();
      String format = null;
      try {
        format = fileName.substring(fileName.indexOf('.') + 1);
      } catch (Exception e) {
        format = "jpg";
      }
      if (ImageIO.getImageWritersByFormatName(format).hasNext()) {
        ImageIO.write(bim, format, file);
      }

Автор: 4epT 26.5.2009, 18:48
Ммм ... это не совсем подойдет  (( просто у меня Graphics2D инициализируется по другому. Если поменять то прога вообще перестает работать (((

вот код:

Код

    @Override
    public void paintComponent(Graphics g)
    {
        super.paintComponent(g);

        Graphics2D gr = (Graphics2D)g;
        ...//Дальше идет код рисования


Есть какие нибудь еще способы ?

Автор: math64 27.5.2009, 10:02
Код рисования выделить в отдельный метод и использовать два раза: при отрисовке компонента и при при его сохранении.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)