Commit 340e7a69 authored by Alexander.Trofimov's avatar Alexander.Trofimov Committed by Alexander.Trofimov

(1.0.0.101) - XlsxSerializerCom.dll

Для ячеек вместо Ref (строка с буквой столбца и номером строки, например "A1") пишем два числа: номер строки + номер столбца (парсинг на C++, вместо JavaScript). Тем самым ускорил открытие файла.

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@53945 954022d7-b5bf-4e40-9824-e11837661b57
parent eb13000f
......@@ -229,7 +229,8 @@ var c_oSerCellTypes =
Style: 1,
Type: 2,
Value: 3,
Formula: 4
Formula: 4,
RefRowCol: 5
};
/** @enum */
var c_oSerFormulaTypes =
......@@ -5485,8 +5486,10 @@ function Binary_WorksheetTableReader(stream, wb, aSharedStrings, aCellXfs, Dxfs,
{
var res = c_oSerConstants.ReadOk;
var oThis = this;
if ( c_oSerCellTypes.Ref == type )
if ( c_oSerCellTypes.Ref == type )
oCell.oId = g_oCellAddressUtils.getCellAddress(this.stream.GetString2LE(length));
else if ( c_oSerCellTypes.RefRowCol == type )
oCell.oId = new CellAddress(this.stream.GetULongLE(), this.stream.GetULongLE()); // Ускорение открытия
else if( c_oSerCellTypes.Style == type )
{
var nStyleIndex = this.stream.GetULongLE();
......@@ -5505,7 +5508,7 @@ function Binary_WorksheetTableReader(stream, wb, aSharedStrings, aCellXfs, Dxfs,
case ECellTypeType.celltypeError: oCell.oValue.type = CellValueType.Error;break;
case ECellTypeType.celltypeNumber: oCell.oValue.type = CellValueType.Number;break;
case ECellTypeType.celltypeSharedString: oCell.oValue.type = CellValueType.String;break;
};
}
}
else if( c_oSerCellTypes.Formula == type )
{
......
......@@ -4316,10 +4316,6 @@
* @return {String}
*/
WorksheetView.prototype._getColumnTitle = function (col) {
/*var q = col < 26 ? undefined : asc_floor(col / 26) - 1;
var r = col % 26;
var text = String.fromCharCode( ("A").charCodeAt(0) + r );
return col < 26 ? text : this._getColumnTitle(q) + text;*/
return g_oCellAddressUtils.colnumToColstrFromWsView(col + 1);
};
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment