Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #35003 > unrolled thread

What do you think of my CropImage class

Started byCecil Westerhof <Cecil@decebal.nl>
First post2016-07-20 09:15 +0200
Last post2016-07-21 20:12 +0200
Articles 20 on this page of 59 — 8 participants

Back to article view | Back to comp.lang.java.programmer


Contents

  What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-20 09:15 +0200
    Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-20 11:12 +0200
    Re: What do you think of my CropImage class Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-07-20 10:02 -0700
      Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-20 21:14 +0200
        Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-20 12:50 -0700
          Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 12:11 +0200
            Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 14:19 +0200
        Re: What do you think of my CropImage class Qu0ll <qu0ll64@gmail.com> - 2016-07-21 05:53 +1000
        Re: What do you think of my CropImage class Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-07-20 13:46 -0700
          Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-20 13:59 -0700
            Re: What do you think of my CropImage class Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-07-20 15:40 -0700
            Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 12:27 +0200
              Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-21 05:17 -0700
                Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 17:43 +0200
                  Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-21 08:59 -0700
                    Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 19:10 +0200
                      Re: What do you think of my CropImage class Arne Vajhøj <arne@vajhoej.dk> - 2016-07-23 21:47 -0400
                        Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-25 04:51 -0700
                          Re: What do you think of my CropImage class Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-07-25 15:01 -0700
                            Re: What do you think of my CropImage class Arne Vajhøj <arne@vajhoej.dk> - 2016-07-25 21:06 -0400
                          Re: What do you think of my CropImage class Arne Vajhøj <arne@vajhoej.dk> - 2016-07-25 21:09 -0400
              Re: What do you think of my CropImage class Nigel Wade <nmw@local.domain> - 2016-07-21 15:44 +0100
                Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 17:46 +0200
          Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 12:25 +0200
            Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 14:16 +0200
      Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 12:05 +0200
        Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 13:23 +0200
        Re: What do you think of my CropImage class Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-07-21 07:58 -0700
          Re: What do you think of my CropImage class Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-07-21 11:13 -0400
            Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 18:12 +0200
          Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 17:49 +0200
    Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 11:58 +0200
      Re: What do you think of my CropImage class Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-07-21 09:35 -0400
        Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-21 09:03 -0700
          Re: What do you think of my CropImage class Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-07-21 12:39 -0400
        Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 18:07 +0200
          Re: What do you think of my CropImage class Nigel Wade <nmw@local.domain> - 2016-07-21 17:23 +0100
          Re: What do you think of my CropImage class Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-07-21 12:56 -0400
        Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 19:03 +0200
          Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-21 10:25 -0700
            Re: What do you think of my CropImage class Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-07-21 14:24 -0400
              Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-21 11:54 -0700
            Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 20:25 +0200
              Re: What do you think of my CropImage class Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-07-21 15:37 -0400
                Re: What do you think of my CropImage class Martin Gregorie <martin@address-in-sig.invalid> - 2016-07-21 21:30 +0000
                Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 23:52 +0200
                  Re: What do you think of my CropImage class Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-07-21 20:35 -0400
                    Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-22 04:21 +0200
                      Re: What do you think of my CropImage class Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-07-21 22:44 -0400
                        Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-22 10:27 +0200
                          Re: What do you think of my CropImage class Martin Gregorie <martin@address-in-sig.invalid> - 2016-07-22 10:47 +0000
                        Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-22 05:16 -0700
                          Re: What do you think of my CropImage class Nigel Wade <nmw@local.domain> - 2016-07-22 15:10 +0100
                            Re: What do you think of my CropImage class Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-07-22 07:47 -0700
                            Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-22 10:21 -0700
      Re: What do you think of my CropImage class Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-07-21 08:30 -0700
        Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 18:19 +0200
          Re: What do you think of my CropImage class Eric Douglas <e.d.programmer@gmail.com> - 2016-07-21 10:18 -0700
            Re: What do you think of my CropImage class Cecil Westerhof <Cecil@decebal.nl> - 2016-07-21 20:12 +0200

Page 1 of 3  [1] 2 3  Next page →


#35003 — What do you think of my CropImage class

FromCecil Westerhof <Cecil@decebal.nl>
Date2016-07-20 09:15 +0200
SubjectWhat do you think of my CropImage class
Message-ID<87twfk93vu.fsf@Equus.decebal.nl>
I need to crop some images and decide to write a Java program for it.
At the moment it is very rudimentary, I plan to add some
functionalities and because I have very little experience with GUI
comments on how to implement the GUI better are welcome.


At the moment it is build with my camera's in mind and cropping for
InstaGram, but when it is seen as useful I will make it more generic.


I have a few problems, the most important are:
- After loading the first or a new image the first click makes the
  image disappear and painted again. Subsequent clicks do not have
  this problem.
- The original photo can be rotated. How can I find this out and make
  the cropped image also rotated?
- How can I add comment to an image?
- After saving the cropped image I want to display it also. What would
  be the best way to do this?

Some of the functionalities I want to add (other ideas are welcome):
- Working with different sets of cropping.
- Possibility to resize. (Select an area of 2.160x2.160 and crop it to
  1.080x1.080).
- Working with a database.

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

[toc] | [next] | [standalone]


#35004

FromCecil Westerhof <Cecil@decebal.nl>
Date2016-07-20 11:12 +0200
Message-ID<87poq88ygp.fsf@Equus.decebal.nl>
In reply to#35003
On Wednesday 20 Jul 2016 09:15 CEST, Cecil Westerhof wrote:

> After saving the cropped image I want to display it also. What would
> be the best way to do this?

Implemented it.

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

[toc] | [prev] | [next] | [standalone]


#35010

FromKnute Johnson <nospam@rabbitbrush.frazmtn.com>
Date2016-07-20 10:02 -0700
Message-ID<nmoark$mqi$1@dont-email.me>
In reply to#35003
On 7/20/2016 00:15, Cecil Westerhof wrote:
 > I need to crop some images and decide to write a Java program for it.
 > At the moment it is very rudimentary, I plan to add some
 > functionalities and because I have very little experience with GUI
 > comments on how to implement the GUI better are welcome.
 >
 >
 > At the moment it is build with my camera's in mind and cropping for
 > InstaGram, but when it is seen as useful I will make it more generic.
 >
 >
 > I have a few problems, the most important are:
 > - After loading the first or a new image the first click makes the
 >   image disappear and painted again. Subsequent clicks do not have
 >   this problem.

We'd need to see the code

 > - The original photo can be rotated. How can I find this out and make
 >   the cropped image also rotated?

That's in the image meta data (I have no clue how to find it)

 > - How can I add comment to an image?

You want to draw on the image or add meta data?

 > - After saving the cropped image I want to display it also. What would
 >   be the best way to do this?

In another window maybe

 > Some of the functionalities I want to add (other ideas are welcome):
 > - Working with different sets of cropping.
 > - Possibility to resize. (Select an area of 2.160x2.160 and crop it to
 >   1.080x1.080).
 > - Working with a database.
 >

Here's a crop component that I wrote years ago, I don't think I ever 
used it for anything but I can't remember.

import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import java.io.*;
import java.net.*;
import javax.imageio.*;
import javax.swing.*;

public class CropComponent extends JPanel {
     BufferedImage bi,subImage;
     boolean mouseDown;
     int startX,startY;
     int endX,endY;
     int x,y,w,h;

     public CropComponent(BufferedImage bi) {
         this.bi = bi;
         setPreferredSize(new Dimension(bi.getWidth(),bi.getHeight()));
         addMouseListener(new MouseAdapter() {
             public void mousePressed(MouseEvent me) {
                 mouseDown = true;
                 startX = me.getX();
                 startY = me.getY();
             }
             public void mouseReleased(MouseEvent me) {
                 mouseDown = false;
                 subImage = CropComponent.this.bi.getSubimage(x,y,w+1,h+1);
                 Runnable r = new Runnable() {
                     public void run() {
                         try {
                             ImageIO.write(subImage,"JPEG",new 
File("crop.jpg"));
                         } catch (IOException ioe) {
                             ioe.printStackTrace();
                         }
                     }
                 };
                 new Thread(r).start();
                 x = y = w = h = 0;
                 repaint();
             }
         });
         addMouseMotionListener(new MouseMotionAdapter() {
             public void mouseDragged(MouseEvent me) {
                 endX = Math.max(0,me.getX());
                 endX =
                  Math.min(endX,CropComponent.this.bi.getWidth()-1);
                 endY = Math.max(0,me.getY());
                 endY =
                  Math.min(endY,CropComponent.this.bi.getHeight()-1);
                 if (startX < endX && startY < endY) {
                     x = startX;
                     y = startY;
                     w = endX-startX;
                     h = endY-startY;
                 } else if (startX > endX && startY > endY) {
                     x = endX;
                     y = endY;
                     w = startX-endX;
                     h = startY-endY;
                 } else if (startX < endX && startY > endY) {
                     x = startX;
                     y = endY;
                     w = endX-startX;
                     h = startY-endY;
                 } else if (startX > endX && startY < endY) {
                     x = endX;
                     y = startY;
                     w = startX-endX;
                     h = endY-startY;
                 }
                 repaint();
             }
         });
     }

     public void paintComponent(Graphics g2D) {
         Graphics2D g = (Graphics2D)g2D;
         g.drawImage(bi,0,0,null);
         if (mouseDown) {
             g.setStroke(new BasicStroke(1.0f,BasicStroke.CAP_SQUARE,
              BasicStroke.JOIN_ROUND,1.0f,new float[] {2.0f,3.0f},1.0f));
             g.setColor(Color.WHITE);
             g.drawRect(x,y,w,h);
         }
     }

     public static void main(final String[] args) {
         Runnable r = new Runnable() {
             public void run() {
                 BufferedImage bi = null;
                 try {
                     try {
                         bi = ImageIO.read(new URL(args[0]));
                     } catch (MalformedURLException murle) {
                         bi = ImageIO.read(new File(args[0]));
                     }
                     JFrame f = new JFrame();
                     f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                     CropComponent cc = new CropComponent(bi);
                     JScrollPane sp = new JScrollPane(cc);
                     f.add(sp,BorderLayout.CENTER);
                     f.pack();
                     f.setVisible(true);
                 } catch (IOException ioe) {
                     ioe.printStackTrace();
                 }
             }
         };
         EventQueue.invokeLater(r);
     }
}



-- 

Knute Johnson


-- 

Knute Johnson

[toc] | [prev] | [next] | [standalone]


#35017

FromCecil Westerhof <Cecil@decebal.nl>
Date2016-07-20 21:14 +0200
Message-ID<874m7k86ll.fsf@Equus.decebal.nl>
In reply to#35010
On Wednesday 20 Jul 2016 19:02 CEST, Knute Johnson wrote:

> On 7/20/2016 00:15, Cecil Westerhof wrote:
>> I need to crop some images and decide to write a Java program for
>> it. At the moment it is very rudimentary, I plan to add some
>> functionalities and because I have very little experience with GUI
>> comments on how to implement the GUI better are welcome.
>>
>>
>> At the moment it is build with my camera's in mind and cropping for
>> InstaGram, but when it is seen as useful I will make it more
>> generic.
>>
>>
>> I have a few problems, the most important are:
>> - After loading the first or a new image the first click makes the
>> image disappear and painted again. Subsequent clicks do not have
>> this problem.
>
> We'd need to see the code

That is stupid: I thought I had pasted the link, but I did not. >:-(

Here it is:
    https://github.com/CecilWesterhof/JavaExamples/blob/master/CropImage/CropImage.java

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

[toc] | [prev] | [next] | [standalone]


#35019

FromEric Douglas <e.d.programmer@gmail.com>
Date2016-07-20 12:50 -0700
Message-ID<e9c9e041-fe5f-4278-9431-6e3ea2bde258@googlegroups.com>
In reply to#35017
On Wednesday, July 20, 2016 at 3:28:08 PM UTC-4, Cecil Westerhof wrote:
> That is stupid: I thought I had pasted the link, but I did not. >:-(
> 
> Here it is:
>     https://github.com/CecilWesterhof/JavaExamples/blob/master/CropImage/CropImage.java

That would help.  I was wondering if we were supposed to guess the code.
I ran it as is.  It is an odd interface.  I click Load and it prompts for a picture.  I select one and it displays it, with a barely noticeable black box in the corner.  I click around and it repaints it and the apparently non-resizeable box moves.  I wrote a class for displaying images and I recall having issues seeing it clear and repaint.  I'll have to lookup my workaround.  Then I click Crop and it opens a file open window.  I'm guessing this is supposed to save what's in the box to a new image file.  I type a file name that does not exist and it opens a new window.  The initial image window looks relatively small (640x480?) This new window looks huge, and the image is scaled to it? blurry, original looked sharp.
Given a day I could add some big improvements to this.  How much time have you spent on it?

[toc] | [prev] | [next] | [standalone]


#35032

FromCecil Westerhof <Cecil@decebal.nl>
Date2016-07-21 12:11 +0200
Message-ID<87r3an712k.fsf@Equus.decebal.nl>
In reply to#35019
I wrote a better explanation of what I wanted to accomplish as a reply
on my original post.

On Wednesday 20 Jul 2016 21:50 CEST, Eric Douglas wrote:

> On Wednesday, July 20, 2016 at 3:28:08 PM UTC-4, Cecil Westerhof wrote:
>> That is stupid: I thought I had pasted the link, but I did not.
>> >:-(
>>
>> Here it is:
>> https://github.com/CecilWesterhof/JavaExamples/blob/master/CropImage/CropImage.java
>
> That would help. I was wondering if we were supposed to guess the
> code. I ran it as is. It is an odd interface. I click Load and it
> prompts for a picture. I select one and it displays it, with a
> barely noticeable black box in the corner. I click around and it
> repaints it and the apparently non-resizeable box moves.

The non-re-sizeable is on purpose.


> I wrote a
> class for displaying images and I recall having issues seeing it
> clear and repaint. I'll have to lookup my workaround.

That would be nice,


> Then I click
> Crop and it opens a file open window. I'm guessing this is supposed
> to save what's in the box to a new image file. I type a file name
> that does not exist and it opens a new window. The initial image
> window looks relatively small (640x480?)

Depends on the original input. The height and width are both divide by
eight because I want to see the complete picture.


> This new window looks huge,
> and the image is scaled to it? blurry, original looked sharp.

No, the cropped image is unscaled. Your original picture is blurry,
but you did not see that because it was scaled down.

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

[toc] | [prev] | [next] | [standalone]


#35039

FromCecil Westerhof <Cecil@decebal.nl>
Date2016-07-21 14:19 +0200
Message-ID<8760rz6v62.fsf@Equus.decebal.nl>
In reply to#35032
On Thursday 21 Jul 2016 12:11 CEST, Cecil Westerhof wrote:

>> Then I click
>> Crop and it opens a file open window. I'm guessing this is supposed
>> to save what's in the box to a new image file. I type a file name
>> that does not exist and it opens a new window. The initial image
>> window looks relatively small (640x480?)
>
> Depends on the original input. The height and width are both divide
> by eight because I want to see the complete picture.

I know display the real size and the displayed size.

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

[toc] | [prev] | [next] | [standalone]


#35020

FromQu0ll <qu0ll64@gmail.com>
Date2016-07-21 05:53 +1000
Message-ID<nmoksi$2g9$1@gioia.aioe.org>
In reply to#35017
On 21/07/2016 05:14, Cecil Westerhof wrote:
> On Wednesday 20 Jul 2016 19:02 CEST, Knute Johnson wrote:
>
>> On 7/20/2016 00:15, Cecil Westerhof wrote:
>>> I need to crop some images and decide to write a Java program for
>>> it. At the moment it is very rudimentary, I plan to add some
>>> functionalities and because I have very little experience with GUI
>>> comments on how to implement the GUI better are welcome.
>>>
>>>
>>> At the moment it is build with my camera's in mind and cropping for
>>> InstaGram, but when it is seen as useful I will make it more
>>> generic.
>>>
>>>
>>> I have a few problems, the most important are:
>>> - After loading the first or a new image the first click makes the
>>> image disappear and painted again. Subsequent clicks do not have
>>> this problem.
>>
>> We'd need to see the code
>
> That is stupid: I thought I had pasted the link, but I did not. >:-(
>
> Here it is:
>     https://github.com/CecilWesterhof/JavaExamples/blob/master/CropImage/CropImage.java

What is this "Swing" that you speak of?

The only graphical toolkit being developed by Oracle for Java is JavaFX.

Shouldn't be trying to crop JavaFX images?

-- 

And loving it,

-Qu0ll (Rare, not extinct)
_________________________________________________
Qu0llSixFour@gmail.com
[Replace the "SixFour" with numbers to email me]

[toc] | [prev] | [next] | [standalone]


#35022

FromKnute Johnson <nospam@rabbitbrush.frazmtn.com>
Date2016-07-20 13:46 -0700
Message-ID<nmonve$7km$1@dont-email.me>
In reply to#35017
On 7/20/2016 12:14, Cecil Westerhof wrote:
> On Wednesday 20 Jul 2016 19:02 CEST, Knute Johnson wrote:
>
>> On 7/20/2016 00:15, Cecil Westerhof wrote:
>>> I need to crop some images and decide to write a Java program for
>>> it. At the moment it is very rudimentary, I plan to add some
>>> functionalities and because I have very little experience with GUI
>>> comments on how to implement the GUI better are welcome.
>>>
>>>
>>> At the moment it is build with my camera's in mind and cropping for
>>> InstaGram, but when it is seen as useful I will make it more
>>> generic.
>>>
>>>
>>> I have a few problems, the most important are:
>>> - After loading the first or a new image the first click makes the
>>> image disappear and painted again. Subsequent clicks do not have
>>> this problem.
>>
>> We'd need to see the code
>
> That is stupid: I thought I had pasted the link, but I did not. >:-(
>
> Here it is:
>     https://github.com/CecilWesterhof/JavaExamples/blob/master/CropImage/CropImage.java
>

I looked at your code and find it a bit disjointed (but I do have a 
rather linear outlook).  I guess it really depends on what you 
ultimately are trying to do though.  If I were going to write a GUI 
program to crop images today, I would:
	1) have a dialog to load an image (you have that) and display it along 
with its current dimensions
	2) have a method to scale the displayed image so that you can operate 
on images bigger than your monitor
	3) use something along the lines of my CropComponent to visually crop 
the image, showing the dimensions of the crop
	4) display the cropped image and its new dimensions, so it can be 
cropped again
	5) have a dialog to save the cropped image (you have that)

or get GIMP cause it does everything for free.  You might look at GIMP 
for their interface, it is really quite good.  The image is in its own 
dialog and all the tools are in a couple of others for handy access. 
Take a look at the Zoom options under the View menu to see what I mean 
about #2 above.

-- 

Knute Johnson

[toc] | [prev] | [next] | [standalone]


#35023

FromEric Douglas <e.d.programmer@gmail.com>
Date2016-07-20 13:59 -0700
Message-ID<d455a4dc-e6c2-463c-b112-21013cb0a07a@googlegroups.com>
In reply to#35022
On Wednesday, July 20, 2016 at 4:46:48 PM UTC-4, Knute Johnson wrote:
> or get GIMP cause it does everything for free.  You might look at GIMP 
> for their interface, it is really quite good.  The image is in its own 
> dialog and all the tools are in a couple of others for handy access. 
> Take a look at the Zoom options under the View menu to see what I mean 
> about #2 above.

Of course we assume this is an exercise in learning Java?  If you just want an image editor the easy answer would be get a completed free application.  I use Paint.NET.

[toc] | [prev] | [next] | [standalone]


#35028

FromKnute Johnson <nospam@rabbitbrush.frazmtn.com>
Date2016-07-20 15:40 -0700
Message-ID<nmoul6$vnd$1@dont-email.me>
In reply to#35023
On 7/20/2016 13:59, Eric Douglas wrote:
> On Wednesday, July 20, 2016 at 4:46:48 PM UTC-4, Knute Johnson
> wrote:
>> or get GIMP cause it does everything for free.  You might look at
>> GIMP for their interface, it is really quite good.  The image is in
>> its own dialog and all the tools are in a couple of others for
>> handy access. Take a look at the Zoom options under the View menu
>> to see what I mean about #2 above.
>
> Of course we assume this is an exercise in learning Java?  If you
> just want an image editor the easy answer would be get a completed
> free application.  I use Paint.NET.
>

That was my point, if it is an exercise, Cecil should take a look at how 
a good image manipulation program works.

-- 

Knute Johnson

[toc] | [prev] | [next] | [standalone]


#35035

FromCecil Westerhof <Cecil@decebal.nl>
Date2016-07-21 12:27 +0200
Message-ID<87invz70cf.fsf@Equus.decebal.nl>
In reply to#35023
On Wednesday 20 Jul 2016 22:59 CEST, Eric Douglas wrote:

> On Wednesday, July 20, 2016 at 4:46:48 PM UTC-4, Knute Johnson wrote:
>> or get GIMP cause it does everything for free. You might look at
>> GIMP for their interface, it is really quite good. The image is in
>> its own dialog and all the tools are in a couple of others for
>> handy access. Take a look at the Zoom options under the View menu
>> to see what I mean about #2 above.
>
> Of course we assume this is an exercise in learning Java? If you
> just want an image editor the easy answer would be get a completed
> free application. I use Paint.NET.

It is a little bit of both. I want to learn Swing and I want to crop a
piece of exactly 1080x1080 out of a picture. Something I cannot do
easily with an image editor.

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

[toc] | [prev] | [next] | [standalone]


#35037

FromEric Douglas <e.d.programmer@gmail.com>
Date2016-07-21 05:17 -0700
Message-ID<6d079eda-a048-4c50-8068-8645da1a6c50@googlegroups.com>
In reply to#35035
On Thursday, July 21, 2016 at 6:44:09 AM UTC-4, Cecil Westerhof wrote:
> It is a little bit of both. I want to learn Swing and I want to crop a
> piece of exactly 1080x1080 out of a picture. Something I cannot do
> easily with an image editor.

Learning Swing would be the important part.  The cropping is pretty easy in Paint.NET.

[toc] | [prev] | [next] | [standalone]


#35048

FromCecil Westerhof <Cecil@decebal.nl>
Date2016-07-21 17:43 +0200
Message-ID<87y44v5751.fsf@Equus.decebal.nl>
In reply to#35037
On Thursday 21 Jul 2016 14:17 CEST, Eric Douglas wrote:

> On Thursday, July 21, 2016 at 6:44:09 AM UTC-4, Cecil Westerhof wrote:
>> It is a little bit of both. I want to learn Swing and I want to
>> crop a piece of exactly 1080x1080 out of a picture. Something I
>> cannot do easily with an image editor.
>
> Learning Swing would be the important part. The cropping is pretty
> easy in Paint.NET.

At the moment I started I thought it was not easy, but it turned out I
knew not enough of Gimp. (Would not hurt to expand my knowledge of
that.) But I do not mind I started it. It never hurts to have a pet
project to learn things. :-D

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

[toc] | [prev] | [next] | [standalone]


#35051

FromEric Douglas <e.d.programmer@gmail.com>
Date2016-07-21 08:59 -0700
Message-ID<492f2ad4-ca16-4c80-9d3c-c77087275369@googlegroups.com>
In reply to#35048
On Thursday, July 21, 2016 at 11:44:07 AM UTC-4, Cecil Westerhof wrote:
> At the moment I started I thought it was not easy, but it turned out I
> knew not enough of Gimp. (Would not hurt to expand my knowledge of
> that.) But I do not mind I started it. It never hurts to have a pet
> project to learn things. :-D

Are you employed?  It could come in handy to learn code that has nothing to do with your job in case you would need it on the job someday, or for something else you say you know on an application for the next job.  Otherwise my pet project is my company's API, I've written most of it myself.  I even used a Timer in my image class so the user can select to rotate it 90 degrees and actually see it spin.

[toc] | [prev] | [next] | [standalone]


#35060

FromCecil Westerhof <Cecil@decebal.nl>
Date2016-07-21 19:10 +0200
Message-ID<874m7i6hng.fsf@Equus.decebal.nl>
In reply to#35051
On Thursday 21 Jul 2016 17:59 CEST, Eric Douglas wrote:

> On Thursday, July 21, 2016 at 11:44:07 AM UTC-4, Cecil Westerhof wrote:
>> At the moment I started I thought it was not easy, but it turned
>> out I knew not enough of Gimp. (Would not hurt to expand my
>> knowledge of that.) But I do not mind I started it. It never hurts
>> to have a pet project to learn things. :-D
>
> Are you employed?

Self employed.


> It could come in handy to learn code that has
> nothing to do with your job in case you would need it on the job
> someday, or for something else you say you know on an application
> for the next job. Otherwise my pet project is my company's API, I've

Nowadays most applications are written as a web application, so maybe
it will not help me to land a new project, but I find it interesting
anyway. :-)


> written most of it myself. I even used a Timer in my image class so
> the user can select to rotate it 90 degrees and actually see it
> spin.

That is a nice one.

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

[toc] | [prev] | [next] | [standalone]


#35118

FromArne Vajhøj <arne@vajhoej.dk>
Date2016-07-23 21:47 -0400
Message-ID<nn16o2$1ha0$1@gioia.aioe.org>
In reply to#35060
On 7/21/2016 1:10 PM, Cecil Westerhof wrote:
> On Thursday 21 Jul 2016 17:59 CEST, Eric Douglas wrote:
>> On Thursday, July 21, 2016 at 11:44:07 AM UTC-4, Cecil Westerhof wrote:
>>> At the moment I started I thought it was not easy, but it turned
>>> out I knew not enough of Gimp. (Would not hurt to expand my
>>> knowledge of that.) But I do not mind I started it. It never hurts
>>> to have a pet project to learn things. :-D

>> It could come in handy to learn code that has
>> nothing to do with your job in case you would need it on the job
>> someday, or for something else you say you know on an application
>> for the next job. Otherwise my pet project is my company's API, I've
>
> Nowadays most applications are written as a web application, so maybe
> it will not help me to land a new project, but I find it interesting
> anyway. :-)

Business applications usually have web GUI's.

But consumer applications are still often fat
(Windows desktop, Android, iOS etc.).

They are just rarely done using Swing.

:-)

Anyway - I think some basic Swing knowledge is part
of "basic knowledge" for Java developers. It may used
as a common reference context.

So I think you are doing the right thing.

Arne

[toc] | [prev] | [next] | [standalone]


#35134

FromEric Douglas <e.d.programmer@gmail.com>
Date2016-07-25 04:51 -0700
Message-ID<1b20208e-a426-4842-a226-6b82ac00553c@googlegroups.com>
In reply to#35118
On Saturday, July 23, 2016 at 9:47:57 PM UTC-4, Arne Vajhøj wrote:
> Business applications usually have web GUI's.

These days it seems there's a lot of hybrids.  Last I checked for Java jobs they all wanted someone who knows the web, Java EE and similar technologies.
Many different methods to connect the data to the web, but the desktop application is still kicking.  Most likely the customer service people in house are not using a browser interface.

[toc] | [prev] | [next] | [standalone]


#35137

FromKnute Johnson <nospam@rabbitbrush.frazmtn.com>
Date2016-07-25 15:01 -0700
Message-ID<nn628b$bld$1@dont-email.me>
In reply to#35134
On 7/25/2016 04:51, Eric Douglas wrote:
> On Saturday, July 23, 2016 at 9:47:57 PM UTC-4, Arne Vajhøj wrote:
>> Business applications usually have web GUI's.
>
> These days it seems there's a lot of hybrids.  Last I checked for
> Java jobs they all wanted someone who knows the web, Java EE and
> similar technologies. Many different methods to connect the data to
> the web, but the desktop application is still kicking.  Most likely
> the customer service people in house are not using a browser
> interface.
>

I don't do any web apps just Swing GUI applications and some specialized 
data presentation apps that use Swing components.  I'm sure I can't be 
the only one :-).

-- 

Knute Johnson

[toc] | [prev] | [next] | [standalone]


#35139

FromArne Vajhøj <arne@vajhoej.dk>
Date2016-07-25 21:06 -0400
Message-ID<nn6d2o$f7v$1@gioia.aioe.org>
In reply to#35137
On 7/25/2016 6:01 PM, Knute Johnson wrote:
> On 7/25/2016 04:51, Eric Douglas wrote:
>> On Saturday, July 23, 2016 at 9:47:57 PM UTC-4, Arne Vajhøj wrote:
>>> Business applications usually have web GUI's.
>>
>> These days it seems there's a lot of hybrids.  Last I checked for
>> Java jobs they all wanted someone who knows the web, Java EE and
>> similar technologies. Many different methods to connect the data to
>> the web, but the desktop application is still kicking.  Most likely
>> the customer service people in house are not using a browser
>> interface.
>>
>
> I don't do any web apps just Swing GUI applications and some specialized
> data presentation apps that use Swing components.  I'm sure I can't be
> the only one :-).

I am sure that you are not the only one.

If you look at Java job ads then something in the 1% magnitude
mention Swing skills.

If we say there are 10 million Java developers, then that
gives 100000 Swing developers.

Arne

[toc] | [prev] | [next] | [standalone]


Page 1 of 3  [1] 2 3  Next page →

Back to top | Article view | comp.lang.java.programmer


csiph-web