当前位置: 首页 > 工具软件 > xlsLib > 使用案例 >

xlsLib编译

章宏恺
2023-12-01

Windows下XlsLib编译说明:

1.        源码下载(本次使用版本:xlslib-package-2.5.0)

         https://sourceforge.net/projects/xlslib/

2.        源码结构

打开工程:(我才用MSVC2008)。工程目录结构如下:

 

其他版本的下面两个项目加载不成功,也就是要生成的动态库项目:

3 编译

 

1)提示 有很多"xlslib\***.h" 的头文件找不到。

 

解决方案:

 

在各个工程属性增加如下图所示的路径:

2)提示重定义

解决方案:

在note.h头文件的大约44-47行改变uint16_t   sheet_notes为uint16_t sheet_notess。当然自定义也可以,重点是不要重复就好。

并修改:note.Cpp的342、355、358行左右的heet_notes为sheet_notess。共三处。

3)编译出现:function_property 错误

解决方案:

在formula.cpp文件的PropertyForForExcelFunction函数(源文件最后)更改为如下:

 

static function_propertyPropertyForForExcelFunction(expr_function_code_t code)

{

         if(code>= maxProperties) {

                   function_propertyp;

                   p.op_class= CELLOP_AS_VALUE;

                   p.num_args= A_UNKNOWN;

                   //=(function_property) { CELLOP_AS_VALUE, A_UNKNOWN };

                   returnp;

         }

         returnfunction_properties[code];

}

 

编译:分别在下面文件找到需要的lib和dll。

 

 

测试例子,参考:http://ju.outofmemory.cn/entry/106483

 

#include <string.h>
#include <xlslib/xlslib.h>
 
using namespace xlslib_core;
using namespace std;
 
int main (int argc, char *argv[]) {
 
    workbook wb;
 
    xf_t* xf = wb.xformat();
 
    worksheet* ws;
 
    ws = wb.sheet("sheet1");
 
    string label = "Hello,World!";
 
    ws->label(1,2,label,xf);    // 从0开始数,第1行,第2列,即C3
ws->label(1,3,L”中文测试”,xf);    //测试中文
 
    wb.Dump("workbook.xls");
 
    return 0;
}


中文字体:

华文细黑:STHeitiLight [STXihei]
华文黑体:STHeiti
华文楷体:STKaiti
华文宋体:STSong
华文仿宋:STFangsong
俪黑 ProLiHeiPro Medium
俪宋 ProLiSongPro Light
标楷体:BiauKai
苹果俪中黑:Apple LiGothic Medium
苹果俪细宋:Apple LiSung Light

Windows的一些:

新细明体:PMingLiU
细明体:MingLiU
标楷体:DFKai-SB
黑体:SimHei
宋体:SimSun
新宋体:NSimSun
仿宋:FangSong
楷体:KaiTi
仿宋_GB2312FangSong_GB2312
楷体_GB2312KaiTi_GB2312
微软正黑体:Microsoft JhengHei
微软雅黑体:Microsoft YaHei

Office会生出来的一些:

隶书:LiSu
幼圆:YouYuan
华文细黑:STXihei
华文楷体:STKaiti
华文宋体:STSong
华文中宋:STZhongsong
华文仿宋:STFangsong
方正舒体:FZShuTi
方正姚体:FZYaoti
华文彩云:STCaiyun
华文琥珀:STHupo
华文隶书:STLiti
华文行楷:STXingkai
华文新魏:STXinwei

 


 类似资料: