初始化PHP-Xlswrite扩展
This commit is contained in:
133
library/libxlsxwriter/examples/panes.c
Normal file
133
library/libxlsxwriter/examples/panes.c
Normal file
@ -0,0 +1,133 @@
|
||||
/*
|
||||
* A simple example using the libxlsxwriter library to create worksheets with
|
||||
* panes.
|
||||
*
|
||||
* Copyright 2014-2021, John McNamara, jmcnamara@cpan.org
|
||||
*
|
||||
*/
|
||||
|
||||
#include "xlsxwriter.h"
|
||||
|
||||
int main() {
|
||||
|
||||
int row;
|
||||
int col;
|
||||
|
||||
/* Create a new workbook and add some worksheets. */
|
||||
lxw_workbook *workbook = workbook_new("panes.xlsx");
|
||||
|
||||
lxw_worksheet *worksheet1 = workbook_add_worksheet(workbook, "Panes 1");
|
||||
lxw_worksheet *worksheet2 = workbook_add_worksheet(workbook, "Panes 2");
|
||||
lxw_worksheet *worksheet3 = workbook_add_worksheet(workbook, "Panes 3");
|
||||
lxw_worksheet *worksheet4 = workbook_add_worksheet(workbook, "Panes 4");
|
||||
|
||||
|
||||
/* Set up some formatting and text to highlight the panes. */
|
||||
lxw_format *header = workbook_add_format(workbook);
|
||||
format_set_align(header, LXW_ALIGN_CENTER);
|
||||
format_set_align(header, LXW_ALIGN_VERTICAL_CENTER);
|
||||
format_set_fg_color(header, 0xD7E4BC);
|
||||
format_set_bold(header);
|
||||
format_set_border(header, LXW_BORDER_THIN);
|
||||
|
||||
lxw_format *center = workbook_add_format(workbook);
|
||||
format_set_align(center, LXW_ALIGN_CENTER);
|
||||
|
||||
|
||||
/*
|
||||
* Example 1. Freeze pane on the top row.
|
||||
*/
|
||||
worksheet_freeze_panes(worksheet1, 1, 0);
|
||||
|
||||
/* Some sheet formatting. */
|
||||
worksheet_set_column(worksheet1, 0, 8, 16, NULL);
|
||||
worksheet_set_row(worksheet1, 0, 20, NULL);
|
||||
worksheet_set_selection(worksheet1, 4, 3, 4, 3);
|
||||
|
||||
/* Some worksheet text to demonstrate scrolling. */
|
||||
for (col = 0; col < 9; col++) {
|
||||
worksheet_write_string(worksheet1, 0, col, "Scroll down", header);
|
||||
}
|
||||
|
||||
for (row = 1; row < 100; row++) {
|
||||
for (col = 0; col < 9; col++) {
|
||||
worksheet_write_number(worksheet1, row, col, row + 1, center);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Example 2. Freeze pane on the left column.
|
||||
*/
|
||||
worksheet_freeze_panes(worksheet2, 0, 1);
|
||||
|
||||
/* Some sheet formatting. */
|
||||
worksheet_set_column(worksheet2, 0, 0, 16, NULL);
|
||||
worksheet_set_selection(worksheet2, 4, 3, 4, 3);
|
||||
|
||||
/* Some worksheet text to demonstrate scrolling. */
|
||||
for (row = 0; row < 50; row++) {
|
||||
worksheet_write_string(worksheet2, row, 0, "Scroll right", header);
|
||||
|
||||
for (col = 1; col < 26; col++) {
|
||||
worksheet_write_number(worksheet2, row, col, col, center);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Example 3. Freeze pane on the top row and left column.
|
||||
*/
|
||||
worksheet_freeze_panes(worksheet3, 1, 1);
|
||||
|
||||
|
||||
/* Some sheet formatting. */
|
||||
worksheet_set_column(worksheet3, 0, 25, 16, NULL);
|
||||
worksheet_set_row(worksheet3, 0, 20, NULL);
|
||||
worksheet_write_string(worksheet3, 0, 0, "", header);
|
||||
worksheet_set_selection(worksheet3, 4, 3, 4, 3);
|
||||
|
||||
|
||||
/* Some worksheet text to demonstrate scrolling. */
|
||||
for (col = 1; col < 26; col++) {
|
||||
worksheet_write_string(worksheet3, 0, col, "Scroll down", header);
|
||||
}
|
||||
|
||||
for (row = 1; row < 50; row++) {
|
||||
worksheet_write_string(worksheet3, row, 0, "Scroll right", header);
|
||||
|
||||
for (col = 1; col < 26; col++) {
|
||||
worksheet_write_number(worksheet3, row, col, col, center);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Example 4. Split pane on the top row and left column.
|
||||
*
|
||||
* The divisions must be specified in terms of row and column dimensions.
|
||||
* The default row height is 15 and the default column width is 8.43
|
||||
*/
|
||||
worksheet_split_panes(worksheet4, 15, 8.43);
|
||||
|
||||
|
||||
/* Some sheet formatting. */
|
||||
|
||||
/* Some worksheet text to demonstrate scrolling. */
|
||||
for (col = 1; col < 26; col++) {
|
||||
worksheet_write_string(worksheet4, 0, col, "Scroll", center);
|
||||
}
|
||||
|
||||
for (row = 1; row < 50; row++) {
|
||||
worksheet_write_string(worksheet4, row, 0, "Scroll", center);
|
||||
|
||||
for (col = 1; col < 26; col++) {
|
||||
worksheet_write_number(worksheet4, row, col, col, center);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
workbook_close(workbook);
|
||||
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user