Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (102)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (322)
Collections:
Other Resources:
What Is jxl.jar 2.6.12
What is jxl.jar 2.6.12?
✍: fyicenter.com
jxl.jar 2.6.12 is the JAR file for Java Excel API 2.6.12,
which is a Java library for reading, writing and
modifying Microsoft Excel spreadsheet files.
JAR File Size and Download Location:
JAR name: jxl-2.6.12.jar Target JDK version: 1.6 Dependency: None File name: jxl.jar File size: 725735 bytes Release date: 24-Oct-2009 Download: Java Excel API Website.
Here are Java Source Code files for jxl-2.6.12.jar:
⏎ jxl/biff/drawing/ObjRecord.java
/*********************************************************************
*
* Copyright (C) 2001 Andrew Khan
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
***************************************************************************/
package jxl.biff.drawing;
import jxl.common.Assert;
import jxl.common.Logger;
import jxl.biff.IntegerHelper;
import jxl.biff.Type;
import jxl.biff.WritableRecordData;
import jxl.read.biff.Record;
/**
* A record which merely holds the OBJ data. Used when copying files which
* contain images
*/
public class ObjRecord extends WritableRecordData
{
/**
* The logger
*/
private static final Logger logger = Logger.getLogger(ObjRecord.class);
/**
* The object type
*/
private ObjType type;
/**
* Indicates whether this record was read in
*/
private boolean read;
/**
* The object id
*/
private int objectId;
/**
* Object type enumeration
*/
private static final class ObjType
{
public int value;
public String desc;
private static ObjType[] types = new ObjType[0];
ObjType(int v, String d)
{
value = v;
desc = d;
ObjType[] oldtypes = types;
types = new ObjType[types.length + 1];
System.arraycopy(oldtypes, 0, types, 0, oldtypes.length);
types[oldtypes.length] = this;
}
public String toString()
{
return desc;
}
public static ObjType getType(int val)
{
ObjType retval = UNKNOWN;
for (int i = 0; i < types.length && retval == UNKNOWN; i++)
{
if (types[i].value == val)
{
retval = types[i];
}
}
return retval;
}
}
// The object types
public static final ObjType GROUP = new ObjType(0x0, "Group");
public static final ObjType LINE = new ObjType(0x01, "Line");
public static final ObjType RECTANGLE = new ObjType(0x02, "Rectangle");
public static final ObjType OVAL = new ObjType(0x03, "Oval");
public static final ObjType ARC = new ObjType(0x04, "Arc");
public static final ObjType CHART = new ObjType(0x05, "Chart");
public static final ObjType TEXT = new ObjType(0x06, "Text");
public static final ObjType BUTTON = new ObjType(0x07, "Button");
public static final ObjType PICTURE = new ObjType(0x08, "Picture");
public static final ObjType POLYGON = new ObjType(0x09, "Polygon");
public static final ObjType CHECKBOX = new ObjType(0x0b, "Checkbox");
public static final ObjType OPTION = new ObjType(0x0c, "Option");
public static final ObjType EDITBOX = new ObjType(0x0d, "Edit Box");
public static final ObjType LABEL = new ObjType(0x0e, "Label");
public static final ObjType DIALOGUEBOX = new ObjType(0x0f, "Dialogue Box");
public static final ObjType SPINBOX = new ObjType(0x10, "Spin Box");
public static final ObjType SCROLLBAR = new ObjType(0x11, "Scrollbar");
public static final ObjType LISTBOX = new ObjType(0x12, "List Box");
public static final ObjType GROUPBOX = new ObjType(0x13, "Group Box");
public static final ObjType COMBOBOX = new ObjType(0x14, "Combo Box");
public static final ObjType MSOFFICEDRAWING = new ObjType
(0x1e, "MS Office Drawing");
public static final ObjType FORMCONTROL =
new ObjType (0x14, "Form Combo Box");
public static final ObjType EXCELNOTE =
new ObjType (0x19, "Excel Note");
public static final ObjType UNKNOWN = new ObjType(0xff, "Unknown");
// Field sub records
private static final int COMMON_DATA_LENGTH = 22;
private static final int CLIPBOARD_FORMAT_LENGTH = 6;
private static final int PICTURE_OPTION_LENGTH = 6;
private static final int NOTE_STRUCTURE_LENGTH = 26;
private static final int COMBOBOX_STRUCTURE_LENGTH = 44;
private static final int END_LENGTH = 4;
/**
* Constructs this object from the raw data
*
* @param t the raw data
*/
public ObjRecord(Record t)
{
super(t);
byte[] data = t.getData();
int objtype = IntegerHelper.getInt(data[4], data[5]);
read = true;
type = ObjType.getType(objtype);
if (type == UNKNOWN)
{
logger.warn("unknown object type code " + objtype);
}
objectId = IntegerHelper.getInt(data[6], data[7]);
}
/**
* Constructor
*
* @param objId the object id
* @param t the object type
*/
ObjRecord(int objId, ObjType t)
{
super(Type.OBJ);
objectId = objId;
type = t;
}
/**
* Expose the protected function to the SheetImpl in this package
*
* @return the raw record data
*/
public byte[] getData()
{
if (read)
{
return getRecord().getData();
}
if (type == PICTURE || type == CHART)
{
return getPictureData();
}
else if (type == EXCELNOTE)
{
return getNoteData();
}
else if (type == COMBOBOX)
{
return getComboBoxData();
}
else
{
Assert.verify(false);
}
return null;
}
/**
* Gets the ObjRecord subrecords for a picture
*
* @return the binary data for the picture
*/
private byte[] getPictureData()
{
int dataLength = COMMON_DATA_LENGTH +
CLIPBOARD_FORMAT_LENGTH +
PICTURE_OPTION_LENGTH +
END_LENGTH;
int pos = 0;
byte[] data = new byte[dataLength];
// The jxl.common.data
// record id
IntegerHelper.getTwoBytes(0x15, data, pos);
// record length
IntegerHelper.getTwoBytes(COMMON_DATA_LENGTH - 4, data, pos + 2);
// object type
IntegerHelper.getTwoBytes(type.value, data, pos + 4);
// object id
IntegerHelper.getTwoBytes(objectId, data, pos + 6);
// the options
IntegerHelper.getTwoBytes(0x6011, data, pos + 8);
pos += COMMON_DATA_LENGTH;
// The clipboard format
// record id
IntegerHelper.getTwoBytes(0x7, data, pos);
// record length
IntegerHelper.getTwoBytes(CLIPBOARD_FORMAT_LENGTH - 4, data, pos + 2);
// the data
IntegerHelper.getTwoBytes(0xffff, data, pos + 4);
pos += CLIPBOARD_FORMAT_LENGTH;
// Picture option flags
// record id
IntegerHelper.getTwoBytes(0x8, data, pos);
// record length
IntegerHelper.getTwoBytes(PICTURE_OPTION_LENGTH - 4, data, pos + 2);
// the data
IntegerHelper.getTwoBytes(0x1, data, pos + 4);
pos += CLIPBOARD_FORMAT_LENGTH;
// End record id
IntegerHelper.getTwoBytes(0x0, data, pos);
// record length
IntegerHelper.getTwoBytes(END_LENGTH - 4, data, pos + 2);
// the data
pos += END_LENGTH;
return data;
}
/**
* Gets the ObjRecord subrecords for a note
*
* @return the note data
*/
private byte[] getNoteData()
{
int dataLength = COMMON_DATA_LENGTH +
NOTE_STRUCTURE_LENGTH +
END_LENGTH;
int pos = 0;
byte[] data = new byte[dataLength];
// The jxl.common.data
// record id
IntegerHelper.getTwoBytes(0x15, data, pos);
// record length
IntegerHelper.getTwoBytes(COMMON_DATA_LENGTH - 4, data, pos + 2);
// object type
IntegerHelper.getTwoBytes(type.value, data, pos + 4);
// object id
IntegerHelper.getTwoBytes(objectId, data, pos + 6);
// the options
IntegerHelper.getTwoBytes(0x4011, data, pos + 8);
pos += COMMON_DATA_LENGTH;
// The note structure
// record id
IntegerHelper.getTwoBytes(0xd, data, pos);
// record length
IntegerHelper.getTwoBytes(NOTE_STRUCTURE_LENGTH - 4, data, pos + 2);
// the data
pos += NOTE_STRUCTURE_LENGTH;
// End
// record id
IntegerHelper.getTwoBytes(0x0, data, pos);
// record length
IntegerHelper.getTwoBytes(END_LENGTH - 4, data, pos + 2);
// the data
pos += END_LENGTH;
return data;
}
/**
* Gets the ObjRecord subrecords for a combo box
*
* @return returns the binary data for a combo box
*/
private byte[] getComboBoxData()
{
int dataLength = COMMON_DATA_LENGTH +
COMBOBOX_STRUCTURE_LENGTH +
END_LENGTH;
int pos = 0;
byte[] data = new byte[dataLength];
// The jxl.common.data
// record id
IntegerHelper.getTwoBytes(0x15, data, pos);
// record length
IntegerHelper.getTwoBytes(COMMON_DATA_LENGTH - 4, data, pos + 2);
// object type
IntegerHelper.getTwoBytes(type.value, data, pos + 4);
// object id
IntegerHelper.getTwoBytes(objectId, data, pos + 6);
// the options
IntegerHelper.getTwoBytes(0x0, data, pos + 8);
pos += COMMON_DATA_LENGTH;
// The combo box structure
// record id
IntegerHelper.getTwoBytes(0xc, data, pos);
// record length
IntegerHelper.getTwoBytes(0x14, data, pos + 2);
// the data
data[pos + 14] = 0x01;
data[pos + 16] = 0x04;
data[pos + 20] = 0x10;
data[pos + 24] = 0x13;
data[pos + 26] = (byte) 0xee;
data[pos + 27] = 0x1f;
data[pos + 30] = 0x04;
data[pos + 34] = 0x01;
data[pos + 35] = 0x06;
data[pos + 38] = 0x02;
data[pos + 40] = 0x08;
data[pos + 42] = 0x40;
pos += COMBOBOX_STRUCTURE_LENGTH;
// End
// record id
IntegerHelper.getTwoBytes(0x0, data, pos);
// record length
IntegerHelper.getTwoBytes(END_LENGTH - 4, data, pos + 2);
// the data
pos += END_LENGTH;
return data;
}
/**
* Expose the protected function to the SheetImpl in this package
*
* @return the raw record data
*/
public Record getRecord()
{
return super.getRecord();
}
/**
* Accessor for the object type
*
* @return the object type
*/
public ObjType getType()
{
return type;
}
/**
* Accessor for the object id
*
* @return accessor for the object id
*/
public int getObjectId()
{
return objectId;
}
}
⏎ jxl/biff/drawing/ObjRecord.java
Or download all of them as a single archive file:
File name: jxl-2.6.12-src.zip File size: 824057 bytes Release date: 2009-10-24 Download
⇐ What Is jexcelapi_2_6_12.zip
2017-06-09, ≈167🔥, 6💬
Popular Posts:
Where to find answers to frequently asked questions on Downloading and Using JDK (Java Development K...
JDK 11 jdk.scripting.nashorn.jm odis the JMOD file for JDK 11 Scripting Nashorn module. JDK 11 Scrip...
JDK 17 java.sql.rowset.jmod is the JMOD file for JDK 17 SQL Rowset module. JDK 17 SQL Rowset module ...
commons-collections4-4.2 -sources.jaris the source JAR file for Apache Commons Collections 4.2, whic...
What Is jms.jar? I heard it's related to JMS (Java Message Service) 1.1? The if you have an jms.jar ...