Solved

Graphics::drawImage() quality

Posted on 2007-11-29
11
563 Views
Last Modified: 2008-02-01
Hi,

When i use the drawImage() function of Graphics, the output quality isn't that great. In win32, you can set some flags for interpolation type of the output image to the device context. Is there any parallel in java? I'd like to do a nicer interpolation than nearest neighbor (looks like that's what's being used)

Thanks
0
Comment
Question by:DJ_AM_Juicebox
  • 5
  • 3
  • 3
11 Comments
 
LVL 92

Expert Comment

by:objects
ID: 20378072
0
 
LVL 92

Expert Comment

by:objects
ID: 20378077
0
 
LVL 92

Expert Comment

by:objects
ID: 20378088
0
Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

 

Author Comment

by:DJ_AM_Juicebox
ID: 20378307
Yeah that seems to be what im looking for, but how could I store those values to use later - I want to do something like:

     Object m_ImageQuality = RenderingHints.VALUE_RENDER_BILINEAR;

     // Later on
     Graphics2D g2 = (Graphics2D)g;
     RenderingHints hints = g2.getRenderingHints();
     hints.put(RenderingHints.KEY_INTERPOLATION, m_ImageQuality);
     g2.setRenderingHints(hints);

but Im getting exceptions relating to m_ImageQuality - what type is that supposed to be?

Thanks
0
 
LVL 92

Expert Comment

by:objects
ID: 20378403
whats the error?
0
 

Author Comment

by:DJ_AM_Juicebox
ID: 20378422
Exception getting thrown, says invalid argument for:

     hints.put()
0
 
LVL 92

Expert Comment

by:objects
ID: 20378489
0
 
LVL 25

Expert Comment

by:InteractiveMind
ID: 20378541
(I assume that your m_ImageQuality definition should be:
Object m_ImageQuality = RenderingHints.VALUE_INTERPOLATION_BILINEAR;
?)
0
 
LVL 25

Expert Comment

by:InteractiveMind
ID: 20378617
Your code works fine for me. I wonder if it's your runtime (there's no guarantee that all of the algorithms are implemented). Try this, and let us know if the exception persists:

Object m_ImageQuality = RenderingHints.VALUE_RENDER_DEFAULT ;
0
 
LVL 25

Accepted Solution

by:
InteractiveMind earned 500 total points
ID: 20378624
(I think you'll need to use the key  KEY_RENDERING  rather than  KEY_INTERPOLATION)
0
 

Author Comment

by:DJ_AM_Juicebox
ID: 20379089
ah yeah im being dumb, VALUE_RENDER_DEFAULT  had nothing to do with the interpolation schemes. I guess nearest neigbor is the default.

I think BILINEAR and BICUBIC are the same in my implementation, though I haven't examind the pixels programmatically. I'm surprised how slow it is.

Thanks!
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Are you developing a Java application and want to create Excel Spreadsheets? You have come to the right place, this article will describe how you can create Excel Spreadsheets from a Java Application. For the purposes of this article, I will be u…
Java functions are among the best things for programmers to work with as Java sites can be very easy to read and prepare. Java especially simplifies many processes in the coding industry as it helps integrate many forms of technology and different d…
Video by: Michael
Viewers learn about how to reduce the potential repetitiveness of coding in main by developing methods to perform specific tasks for their program. Additionally, objects are introduced for the purpose of learning how to call methods in Java. Define …
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

808 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question