exportData(data, name) { let allData; let columnWidths = []; const workbook = XLSX.utils.book_new(); allData = data; const worksheet = XLSX.utils.json_to_sheet(allData); for (let i = 0; i < Object.keys(data).length; i++) { columnWidths.push({ wch: 20 }) } worksheet['!cols'] = columnWidths; // 设置字体和字号 const cellStyle = { font: { name: "微软雅黑", sz: 11 } }; const range = XLSX.utils.decode_range(worksheet['!ref']); for (let R = range.s.r; R <= range.e.r; ++R) { for (let C = range.s.c; C <= range.e.c; ++C) { const cellAddress = { c: C, r: R }; const cellRef = XLSX.utils.encode_cell(cellAddress); worksheet[cellRef].s = cellStyle; } } XLSX.utils.book_append_sheet(workbook, worksheet, name); const currentDate = new Date(); const year = currentDate.getFullYear(); const month = ('0' + (currentDate.getMonth() + 1)).slice(-2); const day = ('0' + currentDate.getDate()).slice(-2); const hours = ('0' + currentDate.getHours()).slice(-2); const minutes = ('0' + currentDate.getMinutes()).slice(-2); const seconds = ('0' + currentDate.getSeconds()).slice(-2); const currentTime = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; const filename = name + '_' + currentTime + '.xlsx'; XLSX.writeFile(workbook, filename); }该代码导出的xlsx文件中的文字是宋体,为什么不是微软雅黑
时间: 2024-04-14 21:25:48 浏览: 30
可能是因为在导出xlsx文件时,没有正确设置字体样式。在代码中,有一个名为`cellStyle`的变量用于设置字体和字号,但没有设置字体名称。为了将文字设置为微软雅黑字体,可以将`cellStyle`对象中的`font`属性修改为以下内容:
```javascript
const cellStyle = {
font: { name: "微软雅黑", sz: 11, rFont: "微软雅黑" }
};
```
通过添加`rFont: "微软雅黑"`,将会将文字设置为微软雅黑字体。然后,将修改后的`cellStyle`应用到单元格中,代码如下:
```javascript
worksheet[cellRef].s = cellStyle;
```
这样,导出的xlsx文件中的文字应该会显示为微软雅黑字体了。
相关问题
dw->dma.dst_addr_widths = AXI_DMA_BUSWIDTHS;
这段代码的意思是将AXI_DMA_BUSWIDTHS的值赋给dw->dma.dst_addr_widths。AXI_DMA_BUSWIDTHS可能是一个宏定义或者变量,表示AXI DMA传输的目标地址总线宽度。这个代码片段可能出现在AXI DMA驱动程序中的初始化过程中,目的是设置DMA传输的目标地址总线宽度。
train_dataloader = torch.utils.data.DataLoader(train_dataset, batch_size=batch_size, num_workers=nw, # Shuffle=True unless rectangular training is used shuffle=not opt.rect, pin_memory=True, # 将数据加载到主机内存中的固定位置 collate_fn=train_dataset.collate_fn)的输出都有哪些数?
`train_dataloader` 是一个 `torch.utils.data.DataLoader` 对象,用于将训练数据集分成多个批次进行训练。在每个迭代周期中,`train_dataloader` 加载一个批次的训练数据,并将其转换为 `torch.Tensor` 类型的张量,以供模型进行训练。
具体来说,`train_dataloader` 加载的每个批次数据包含以下五个元素:
1. 图像数据的张量,形状为 `(batch_size, channels, height, width)`,其中 `batch_size` 表示批次大小,`channels` 表示图像通道数,`height` 和 `width` 分别表示图像的高度和宽度。
2. 目标标注数据的张量,形状为 `(batch_size, num_targets, 5)`,其中 `batch_size` 表示批次大小,`num_targets` 表示每张图像中目标的个数,`5` 表示每个目标的标注信息(包括类别标签、中心点坐标和宽高)。
3. 图像文件的路径列表,形状为 `(batch_size,)`,其中每个元素是一个字符串,表示对应图像文件的路径。
4. 图像的宽度列表,形状为 `(batch_size,)`,其中每个元素是一个整数,表示对应图像的宽度。
5. 图像的高度列表,形状为 `(batch_size,)`,其中每个元素是一个整数,表示对应图像的高度。
需要注意的是,这些元素的数量和形状都与 `batch_size` 相关,即每个批次中的样本数量。因此,`train_dataloader` 的输出是一个元组,其中包含了所有批次数据的迭代器。在代码中,可以使用 `for` 循环遍历这个迭代器,逐个访问每个批次的数据,例如:
```python
for i, (images, targets, paths, widths, heights) in enumerate(train_dataloader):
# ...
```
在上述代码中,变量 `i` 表示当前迭代的批次号,而变量 `images`、`targets`、`paths`、`widths` 和 `heights` 则分别是当前批次的图像数据、目标标注数据、图像文件路径、图像宽度和图像高度,可以在模型训练中使用这些数据。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![gz](https://img-home.csdnimg.cn/images/20210720083447.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)