Java Drawing DrawTop

Language

JP  US  UK

 

Drawing, Drawing Panel

 H. Jyounishi, Tokyo Japan
 

Frame (Index), No frame                 version:0.3(latest)  

Summary:The DrawPanel class is an extended class of Swing JPanel and all the drawing methods are triggered by the DrawPanel.paint method.
Classes on this page: DrawPanel, DrawShapeUtil, ArrowShape, TempShape, PaintStyle, DrawParameters

1. Overview

All the drawing methods are triggered by the DrawPanel.paint method. The DrawPanel.paint method retrieves shape objects (ShapeContainer objects) by the ContainerManager and calls the ShapeContainer.drawShape method. The ShapeContainer.drawShape method calls the DrawShapeUtil.drawShapeElement method and other DrawShapeUtil methods according to the state of the ShapeContainer. The DrawShapeUtil class is a collection of the methods to draw a various kind of shapes and their auxiliaries.
The temporary shapes (TempShape objects) are used for responding to a user's input and they are drawn by the drawTempShape method.

: To display a shape on the canvas, the ShapeContainer object representing the shape must be added to the ContainerList by the ContainerManager.addContainer method. After added, the shape will be displayed by calling repaint method of the DrawPanel.


Figure 1 Diagram of drawing

=> DrawPanel.paint, ShapeContainer.drawShape, DrawShapeUtil, ContainerManager, ContainerList



2. Class DrawPanel return=>page top
public class DrawPanel extends JPanel

Field Description
buffer private Image buffer
The image buffer for double buffering.
tempShapeVector Vector tempShapeVector
Store the TempShape objects.
viewInformation String viewInformation
The string to be displayed by the showViewInformation method.
statusInformation String statusInformation
The string to be displayed by the showSettingInformation method.

Method Description
Constructor Creates a new DrawPanel object with initial setting.
・The panel size and orientation: A4, Landscape.
・Scale factor: 1.0.
paint public void paint(Graphics g)
The top method for drawing shapes.
・Draws shapes into buffer by paintToBuffer method.
・Draws the buffer by drawImage method.
・Shows the view information and the settings information.

Calls the showViewInformation method and the showSettingInformation method of this class.

paintToBuffer public void paint(Graphics g)
Draws the following shapes to the buffer.
・Draws shapes created by users.

The users' shapes are retrieved by the methods of the ContainerManager and are drawn by the ShapeContainer.drawShape method.
=> Drawing the objects in ShapeContainer
・Draws temporary shapes.

The TempShape objects are retrieved from the tempShapeVector and drawn by the drawTempShape method of this class.
・Draws a dragged rectangle for selection.

Draws the dragged rectangle by the SelectionLS.drawDraggedRectangle method.

setBuffer private void setBuffer()
Sets the buffer.
showViewInformation private void showViewInformation(Graphics g)
Displays the sheet size, scale factor and page number on the left side panel above the tool bar.


showSettingInformation private void showSettingInformation(Graphics g)
Displays the setting information on the right side panel above the tool bar.
drawTempShape private void drawTempShape(Graphics g)
Displays the temporary shapes stored in the tempShapevector.
addTempShape
public void addTempShape(TempShape tempShape)
Adds the TempShape object to the tempShapevector.
clearTempShape public void clearTempShape(String id)
Removes the TempShape object whose id equals the specified id from to the tempShapevector.
clearAllTempShapes
public void clearAllTempShape()
Removes all the TempShape objects in the tempShapevector.
repaint public void repaint(String callFrom)
This method executes the repaint method and prints "callFrom".


3. Class DrawShapeUtil return=>page top
The class is the collection of the methods to draw a shape object and its auxiliary figures (selection box, resize handles etc.).

Method
Description
drawShapeElement
(static)
public static void drawShapeElement(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object.
Processing:
This method is called by the drawShape of the ShapeContainer. This method calls the drawStandardElement, drawImageElement or drawLineElement method according to the type of the shapeElement.
In addition, this method calls the drawConnectorMark and drawNodeMark method.
drawStandardElement
(static)
private static void drawStandardElement(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object of the basic element.
Processing:
This method is called by the drawShapeElement of this class.
Draws the shapeElement excluding LineElement, PolylineElement and ImageElement.
・Sets the clip rectangle which is slightly larger than the bounding box of the shapeElement.
・Sets RenderingHints.VALUE_ANTIALIAS_ON by the java.awt.Graphics2D.setRenderingHint method.
・When the shapeElement is being created, calls the drawClosedMessage method.
・If DrawParameters.DRAW_BOUNDINGBOX equals true, then draw a bounding box which coves a shape.


Normal displayDraw bounding box

drawImageElement
(static)
private static void drawImageElement(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object of an ImageElement
Processing:
This method is called by the drawShapeElement of this class.
Draws the image (the bufferedImage field) of the ImageElement by the java.awt.Graphics.drawImage method within the bounding box of the ImageElement.

g.drawImage(imageElement.getBufferedImage(), int)shrinkedRect.getX(), (int)shrinkedRect.getY(), (int)shrinkedRect.getWidth(), (int)shrinkedRect.getHeight(), null);

drawLineElement
(static)
private static void drawLineElement(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object of a LineElement or PolylineElement object.
Processing:
This method is called by the drawShapeElement of this class.
Draws the line or polyline with arrow at the endpoint by calling drawLine method of this class.
・Sets RenderingHints.VALUE_ANTIALIAS_ON by the java.awt.Graphics2D.setRenderingHint method to draw a diagonal line clearly.
・When the shapeElement is being created, calls the drawClosedMessage method.
drawClosedMessage
(static)
private static void drawClosedMessage(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object.
Processing:
Shows the string of "closed" near the center of the shapeElement, if the shapeElement is changed from a open shape to a closed shape.
drawLine
(static)
private static void drawLine(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object of a LineElement or PolylineElement object.
Processing:
・Calls the getTrimmedLine method to cut off the ends of the line or polyline.
・Calls the createArrowShape method to create a ArrowShape object.

How to draw the ArrowShape objects is specified by the PaintSyle object linked from the ShapeContainer of this shapeElement.

getTrimmedLine
(static)
private static Curve2D getTrimmedLine(ShapeContainer shapeContainer)
Parameters:
shapeContainer - The ShapeContainer object of a LineElement or PolylineElement object.
Processing:
If the whole line is drawn with a arrow head, it looks like Figure (a). To avoid this, the the end of the line should be cut off slightly (Figure_(b)). This is important especially when the line width is not small. To cut off the end of the line, the Line2DE.getTrimmedLine method or the Polyline2DE.getTrimmedPolyline method is used.


Figure_(a)Figure_(b)

createArrowShape
(static)
private static ArrowShape createArrowShape(int position , ShapeContainer shapeContainer)
Parameters:
position - If position equals 0, then creates a ArrowShape object at the start point of line/polyline, otherwise creates it at the end point of line/polyline.
shapeContainer - The ShapeContainer object of a LineElement or PolylineElement object.
Returns:
The ArrowShape object.
drawNodeMark
(static)
private static void drawNodeMark(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object.
Processing:
This method is called by the drawShapeElement method and draws the segment junction points of the PolylineElement, CubicCurveElement and GeneralCurveElement.
drawCharacteristicMark
(static)
private static void drawCharacteristicMark(Graphics g, ShapeContainer shapeContainer)
This method is called from the drawShapeElement method.
Draw characteristic points output from the Curve2D.getCharacteristicPoints method.


Normal displayDraw characteristic points

drawConnectorMark
(static)
private static void drawConnectorMark(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object.
Processing:
This method is called by the drawShapeElement method and draws the identification marks if the shape element can be a connector or the shape element allows to be connected with connectors.
drawSelection
(static)
public static void drawSelection(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object.
Processing:
This method is called by the drawShape method of the ShapeContainer to draws the selection box and resize handles (Figure 3.1, Figure 3.3).
If the shapeElement is a line, the calls drawLineSelection method, otherwise calls drawSelecetionBox method.
drawSelectionBox
(static)
private static void drawSelectionBox(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object.
Processing:
This method is called by the drawSelection method. This method draws the selection box and resize handles (Figure 3.1) for the shapeElement and also draws square marks at the endpoints of the curve if the curve isn't closed (Figure 3.3).
If the shapeElement is a line, the calls drawLineSelection method, otherwise calls drawSelecetionBox method.
: The line width of the selection box, the mark size of the resize handles are independent of the scale (zoom) factor (Figure 3.2). This is because if these are dependent of the scale (zoom) factor, the selection box and the resize handles are displayed small on the canvas for the small scale factor, then the operation of moving a shape with its selection box or resizing a shape with a resize handle may be difficult.
drawLineSelection
(static)
private static void drawLineSelection(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object of the LineElement object.
Processing:
This method is called by the drawSelection method to draws square marks at the endpoints of the line (Figure 3.3).
drawSegmentModifiers
(static)
public static void drawSegmentModifiers(Graphics g, ShapeContainer shapeContainer)
Parameters:
g - The java.awt.Graphics object.
shapeContainer - The ShapeContainer object.
Processing:
If the mode of the ShapeContainer linking to the ShapeElement is Command.MODIFYING_SHAPE_MODE, then this method is called. This method draws the control points and tangent lines of the curve.
=> Figure 1.2, 1.3, 1.4 in Modifying shape
drawTempShape
(static)
public static void drawTempShape(String id, Point2D point, int size, String message, Color color)
Parameters:
id - The identifier of a group of TempShape objects.
point - The display position of a TempShape object.
size - The size of a TempShape object. if size equals 0, the size is DrawParameters.Mark_SmallSize, otherwise DrawParameters.Mark_NormalSize.
message - The string which is displayed beside the TempShape object.
color - The color of message.
Processing:
This method used for displaying temporary and auxiliary shapes during executing a command.
This method creates a new TempShape object and adds it to tempShapeVector by the addTempShape method of DrawPanel.
drawTempShape
(static)
public static void drawTempShape(String id, Shape shape, Stroke stroke, Color lineColor, Color fillColor, String message, Color messageColor)
Parameters:
id - The identifier of a group of TempShape objects.
shape - The shape to be stored in a TempShape object.
stroke - The Stroke object for drawing the border of the shape.
lineColor - The Color object for drawing the border of the shape.
fillColor - The Color object for filling the shape.
message - The string which is displayed beside the TempShape object.
messageColor - The color of message.
Processing:
This method used for displaying temporary and auxiliary shapes during executing a command.
This method creates a new TempShape object and adds it to tempShapeVector by the addTempShape method of DrawPanel.



Figure 3.1 The selection box and the resize handles

Scale factor=100% Scale factor=144% Scale factor=173%

Figure 3.2 The line width of the selection box and the mark size of the resize handles factor.


(a) Resize handles at the endpoints


(b) Selection box and resize handles

If the shape element is not closed, draws the resize handle at the endpoints.

Figure 3.3



4. Class ArrowShape return=>page top

This class represents the shape of an arrowhead.

Figure4.1 Arrow shape

Drawing the arrow line as follow.
・Cuts off the end point of a line where an arrow shape is drawn.
・Represents an arrow head by a polyline or polygon (Polyline2DE).
・Before drawing an arrow line, sets RenderingHints.VALUE_ANTIALIAS_ON to Graphics2D.


 Figure 4.2 The data of an arrow head


Field
Description
ArrowAngle
final static double ArrowAngle
The angle of the arrow head. Currently 40 degrees.
MinimumArrowHeight
final static double MinimumArrowHeight=8d
The minimum height of the arrow head. The size of the arrow head is dependent of the line width of an arrow line. This number prevents that the arrow head is too small for a narrow arrow line.
arrowType
int arrowType
The type of the arrow head (1 or 2).
lineWidth
double lineWidth
The line width of the border of the arrow head.
headPosition
Vector2D headPosition
The head position of the arrow head.
direction
Vector2D direction
The direction vector of the arrow.

Method
Description
Constructor
public Arrow(int arrowType, double lineWidth, Vector2D headPosition, Vector2D direction)
Sets the parameter to the corresponding fields.
getArrowShape
Polyline2DE getArrowShape()
Returns the Polyline2DE object representing the shape of the arrow head.


5. Class TempShape return=>page top
public class TempShape

The TempShape class is used for helping a user's understanding. Auxiliary shapes and texts of the TempShape are displayed when the system responds to a user's input. To stop displaying, calls the clearTempShape or clearAllTempShapes method of the DrawPanel.


Field
Description
id
public String id
The identification string of this object.
shape public Shape shape
The Shape object of this object.
stroke public Stroke stroke
The Stroke object to draw the shape.
lineColor public Color lineColor
The Color object to draw the border of the shape.
fillColor public Color fillColor
The Color object to fill the shape.
message public String message
The message to be displayed on the canvas.
messageColor public Color messageColor
The Color object of the message.
messageFont public Font messageFont
The Font object of the message.

Method
Description
Constructor public TempShape(String id, Shape shape, Stroke stroke, Color lineColor, Color fillColor, String message, Color messageColor, Font messageFont)
Sets the parameter to the corresponding field.
getStringPosition
public Point2D getStringPosition()
Returns the position for drawing the message string.


6. Class PaintStyle return=>page top
public class PaintStyle implements Serializable

図形の描画スタイル(輪郭線の色、塗りつぶしの色、線の太さ、線の種類、矢印など)はPaintStyleクラスで保持する。
PaintStyleオブジェクトはShapeContainerオブジェクトが作られるときにコンストラクタで一緒に作られる。





Figure 6.1 Line width

Figure 6.2 Line stroke

Figure 6.3 Arrow style

 
Field
Description
shapeContainer
ShapeContainer shapeContainer
The ShapeContainer object which has this PaintStyle object.
fillColor
public Color fillColor
The fill color of the shape element.
lineColor
public Color lineColor
The border color of the shape element.
lineWidth
public float lineWidth
The line width of the border of the shape element. =>Figure 6.1
dashedStyle
public String dashedStyle
The String representing the line stroke of the border of the shape element.
"solid"/"roundedDot"/"squareDot"/"dash"/"dashDot"/"dashDotDot". =>Figure 6.2
dash
public float[] dash
The array representing the dash pattern.
The sequence of line length, space length, line length, space length ∙ ・・・of the dash pattern is stored in the array.
arrowStyle
public int arrowStyle
The number representing the style of the arrow line. =>Figure 6.3
startArrowType
public int startArrowType
The type of the arrow head at the start point of the arrow line.
0: No arrow, 1: V-shaped , 2: Filled triangle.
endArrowType
public int endArrowType
The type of the arrow head at the end point of the arrow line.
0: No arrow, 1: V-shaped , 2: Filled triangle.

Method
Description
Constructor
public PaintStyle(ShapeContainer shapeContainer)
Sets the parameter to the shapeContainer.
getShapeContainer
public ShapeContainer getShapeContainer()
Returns the shapeContainer.
setShapeContainer
public void setShapeContainer(ShapeContainer container)
Sets the parameter to the shapeContainer.
setFillColor
void setFillColor(Color fillColor)
Sets the parameter to the fillColor.
getFillColor
Color getFillColor()
Returns the fillColor.
setLineColor
void setLineColor(Color lineColor)
Sets the parameter to the lineColor.
getLineColor
Color getLineColor()
Returns the lineColor.
setLineWidth
void setLineStyle(String lineWidth)
Parameters:
lineWidth - 1.0 pt/1.5 pt/2.0 pt ∙∙∙.
Processing:
Converts the parameter to integer number and sets it to the lineWidth.
getLineWidth
float getLineWidth()
Returns the lineWidth.
setDashedStyle
public void setDashedStyle(String dashedStyle)
Parameters:
dashedStyle - "solid"/"roundedDot"/"squareDot"/"dash"/"dashDot"/"dashDotDot".
Processing:
Converts the dashedStyle to the array of integer numbers and sets it to the dash.
getDashedStyle public String getDashedStyle()
Returns the dashedStyle.
getLineStroke
public Stroke getLineStroke()
Return the Stroke object by referring lineWidth and dash.
setArrowStyle
public void setArrowStyle(String arrowStyle)
Parameters:
arrowStyle - "arrow style 1", "arrow style 2", "arrow style 3", "arrow style 4", "arrow style 5", "arrow style 6", "arrow style 7".
Processing:
Converts thearrowStyle to integer number and sets it to the arrowStyle, startArrowType and endArrowType.
getArrowStyle
public String getArrowStyle()
Returns the arrowStyle.
getArrowStroke
public Stroke getArrowStroke()
Returns the Stroke object for drawing the arrow head by referring lineWidth.
getSerializable
PaintStyl
e

public SerializablePaintStyle getSerializablePaintStyle()
Returns:
The SerializablePaintStyle object.
setSerializable
PaintStyle

public void setSerializablePaintStyle(SerializablePaintStyle data)
Parameters:
data - The SerializablePaintStyle object.
Processing:
Set the contents of the data to this object.
getDefaultStroke
(static)
public static Stroke getDefaultStroke()
Returns the Stroke object whose line width is 0.5 and whose line type is solid.
getDefaultStroke
(static)
public static Stroke getDefaultStroke(float lineWidth)
Returns the Stroke object whose line width is specified by the parameter and whose line type is solid.
setPaintStyleToMenu
(static)
public void setPaintStyleToMenu(ShapeContainer[] shapeContainers)
Parameters:
shapeContainers - The array of the ShapeContainer objects.
Processing:
If the shapeContainers have common paint style attributes, then reflects them to the components - button, pull down menu, color chooser or so on - on the tool bar.
・Gets common paint style attributes of the shapeContainers(ShapeContainer).

Calls the getCommonPaintStyle method to get the common paint style attributes. If each field in the returned PaintStyle object has a right value, then it's a common attribute of the shapeContainers.

・Gets the components by the getMenuComponents method of the MenuUtil.

Sets each common paint attribute to the components.

: The following examples are the common attributes.
1.5 pt in Figure 6.1, "squareDot" in Figure 6.2, "arrow style 7" in Figure 6.3
getCommonPaintStyle
(static)
private static PaintStyle getCommonPaintStyle(ShapeContainer[] shapeContainers)
Parameters:
shapeContainers - The array of the ShapeContainer objects.
Processing:
If the shapeContainers objects has common paint style attributes, then sets them to a new PaintStyle object and return the new object.


7. DrawParameters class  return=>page top
public class DrawParameters
This class defines the constants necessary for drawing shapes and strings.

Field
Description
Cursor public static Cursor DEFAULT_CURSOR=new Cursor(Cursor.DEFAULT_CURSOR);
public static Cursor MOVE_CURSOR=new Cursor(Cursor.MOVE_CURSOR);
∙∙∙∙
public static Cursor TEXT_CURSOR=new Cursor(Cursor.TEXT_CURSOR);

The Cursor objects.
sheet public final static int A3=0;
public final static int A4=1;
∙∙∙∙
public final static int Tabloid=8;

The integer numbers representing the sheet types.
sheet size public final static Dimension A3_Size=new Dimension(297, 420);
public final static Dimension A4_Size=new Dimension(210, 297);
∙∙∙∙
public final static Dimension Tabloid_Size=new Dimension(279, 432);

The Dimension objects representing the sheet sizes in millimeter.
SheetSizesMM

public final static Dimension[] SheetSizesMM={A3_Size, A4_Size, A5_Size, B4_Size, B5_Size, PostCardJP_Size, Letter_Size, Legal_Size, Tabloid_Size};
The array of Dimension objects representing the sheet sizes.
SheetSizeString public final static String[] SheetSizeString= {"A3", "A4", "A5", "B4", "B5", "PostCardJP","Letter", "Legal"," Tabloid"};
The array of strings representing the sheet sizes.
LandScape, Portrait
public final static int LandScape=0;
public final static int Portrait=1;

The integer numbers representing the sheet orientation.
SheetOrientationString public final static String[] SheetOrientationString={"LandScape", "Portrait"};
The strings representing the sheet orientation.
InchToMM public final static double InchToMM=25.4;
Millimeter representation of one inch.
nchToPixels public final static int InchToPixels=96;
Pixel representation of one inch.
Font public final static Font DefaultFont=new Font(Font.DIALOG, Font.PLAIN,12);
public final static Font Font12Bold=new Font(Font.DIALOG, Font.BOLD, 12);
∙∙∙∙
public final static Font Font14Bold=new Font(Font.DIALOG, Font.BOLD, 14);
The Font objects used for drawing text on the canvas.
SelectionBoxOffset,
SelectionBoxWidth,
DrawAreaOffset


public final static double SelectionBoxOffset=6;
public final static double SelectionBoxWidth=4;
public final static int DrawAreaOffset=40;

・SelectionBoxOffset

Offset value of the selection box from the shape bounding box.

・SelectionBoxWidth

The drawing width of a selection box.

・DrawAreaOffset:

The DrawArea means the maximum rectangle necessary for drawing a shape. The DrawAreaOffset provides the offset amount in pixels which is used for creating the DrawArea by offsetting the bounding box of a selected shape

Mark_NormalSize,
Mark_SmallSize
public final static int Mark_NormalSize=6;
public final static int Mark_SmallSize=4;
・Mark_NormalSize:The mark size used for drawing resize handles etc.
・Mark_SmallSize:The smaller mark size.
Connection public final static double ConnectionTolerance=4d;
public final static double ConnectionSmallTolerance=2d;
public final static double ClosedTolerance=3d;
public final static double Sampling_Pitch=5d;

・ConnectionTolerance

When the endpoint of a connector is moved and the distance from the endpoint to other shape is smaller than this constant, then the connector will be connected to the other shape.

・ClosedTolerance

If the distance between the start point and the end point of a polyline/curve is smaller than this constant, then the polyline/curve is regarded as a closed polyline/curve.

・Sampling_Pitch

The pitch for sampling the points on a line/polyline/curve or the border of a closed shape.

DefaultAlpha,
MoveAlpha
public final static float DefaultAlpha=0.95f;
public final static float MoveAlpha=0.6f;

DefaultAlpha: The alpha blend in normal state.
MoveAlpha: The alpha blend which is reffered when a shape is moved/resized.
DrawOnScreen,
DrawOnPrinter,
DrawOnImage
public final static int DrawOnScreen=0;
public final static int DrawOnPrinter=1;
public final static int DrawOnImage=2;

・DrawOnScreen:Implies drawing shapes on a computer display screen.
・DrawOnPrinter:Implies drawing shapes on a printer.
・DrawOnImage:Implies drawing shapes on the image buffer.
Settings public static boolean AUTO_ALIGN=true;
public static boolean ENABLE_CONNECTOR=true;
public static int AUTO_TRACKING_OPTION;
public static boolean DRAW_NODE_POINTS=false;
public static boolean DRAW_TEXTLAYOUT=false;
public static boolean DRAW_BOUNDINGBOX=false;

・AUTO_ALIGN

The auto-align function is on, if this field is true.

・ENABLE_CONNECTOR

The connector function is on, if this field is true.

AUTO_TRACKING_OPTION

Command.FREE_DIRECTION/Command.KEEP_XY_DIRECTION_AND_POSITION

・DRAW_NODE_POINTS

Draws the marks on the segment junction points of a polyline or cubic curve, if this field is true.

DRAW_TEXTLAYOUT

Draws the bounds of the TextLayout objects in a TextBox, if this field is true.

DRAW_BOUNDINGBOX

Draws the bounding box of a shape, if this field is true.

DrawOption public static int DrawMode=DrawOnScreen;
Set one of the DrawOnScreen, DrawOnPrinter or DrawOnImage to this field.

Method
Description
getScale public static double getScale()
Returns the Scale field.
getSheetSizeByPixel public static Dimension getSheetSizeByPixel()
Returns the current sheet size by pixels.


Copyright (c) 2009-2013
All other trademarks are property of their respective owners.