*/
package jexer.backend;
+import java.awt.Graphics;
+import java.awt.Graphics2D;
+import java.awt.RenderingHints;
import java.awt.image.BufferedImage;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
* @return the width in pixels of a character cell
*/
public int getTextWidth() {
- return (widthPixels / sessionInfo.getWindowWidth());
+ if (sessionInfo.getWindowWidth() > 0) {
+ return (widthPixels / sessionInfo.getWindowWidth());
+ }
+ return 16;
}
/**
* @return the height in pixels of a character cell
*/
public int getTextHeight() {
- return (heightPixels / sessionInfo.getWindowHeight());
+ if (sessionInfo.getWindowHeight() > 0) {
+ return (heightPixels / sessionInfo.getWindowHeight());
+ }
+ return 20;
}
/**
newImage = new BufferedImage(cells.size() * getTextWidth(),
getTextHeight(), BufferedImage.TYPE_INT_ARGB);
- java.awt.Graphics gr = newImage.getGraphics();
+ Graphics gr = newImage.getGraphics();
+ if (gr instanceof Graphics2D) {
+ ((Graphics2D) gr).setRenderingHint(RenderingHints.KEY_ANTIALIASING,
+ RenderingHints.VALUE_ANTIALIAS_ON);
+ ((Graphics2D) gr).setRenderingHint(RenderingHints.KEY_RENDERING,
+ RenderingHints.VALUE_RENDER_QUALITY);
+ }
gr.drawImage(image, 0, 0, newImage.getWidth(),
newImage.getHeight(), null, null);
gr.dispose();
newImage = new BufferedImage(cells.size() * getTextWidth(),
getTextHeight(), BufferedImage.TYPE_INT_ARGB);
- java.awt.Graphics gr = newImage.getGraphics();
+ Graphics gr = newImage.getGraphics();
+ if (gr instanceof Graphics2D) {
+ ((Graphics2D) gr).setRenderingHint(RenderingHints.KEY_ANTIALIASING,
+ RenderingHints.VALUE_ANTIALIAS_ON);
+ ((Graphics2D) gr).setRenderingHint(RenderingHints.KEY_RENDERING,
+ RenderingHints.VALUE_RENDER_QUALITY);
+ }
gr.drawImage(image, 0, 0, newImage.getWidth(),
newImage.getHeight(), null, null);
gr.dispose();
newImage = new BufferedImage(cells.size() * getTextWidth(),
getTextHeight(), BufferedImage.TYPE_INT_ARGB);
- java.awt.Graphics gr = newImage.getGraphics();
+ Graphics gr = newImage.getGraphics();
+ if (gr instanceof Graphics2D) {
+ ((Graphics2D) gr).setRenderingHint(RenderingHints.KEY_ANTIALIASING,
+ RenderingHints.VALUE_ANTIALIAS_ON);
+ ((Graphics2D) gr).setRenderingHint(RenderingHints.KEY_RENDERING,
+ RenderingHints.VALUE_RENDER_QUALITY);
+ }
gr.drawImage(image, 0, 0, newImage.getWidth(),
newImage.getHeight(), null, null);
gr.dispose();