gpt4 book ai didi

PHP 到 Excel,粗体字

转载 作者:行者123 更新时间:2023-12-04 13:06:05 26 4
gpt4 key购买 nike

为了通过php将一些数据从excel传输到excel,我使用这个函数来创建标签;

function xls_label($row, $col, $value, $bold )  
{
echo pack("ssssss", 0x204, 8 + strlen($value), $row, $col, 0x0, strlen($value));
echo $value;
}

这会添加一个常规字体的标签。

现在我想知道我需要在这个函数中添加什么来使标签的字体变粗?

我不想使用任何库,因为我只需要这个简单的功能。

最佳答案

我会说使用库,因为(正如 Marc B 所说)“如果您使用格式/字体,那么它不再是一个“非常简单”的 Excel 文件。

你甚至没有说你需要什么 BIFF 版本,所以我假设 BIFF5,因为你使用的是 0x204 的标签单元标记

重要的元素是0x0你的包装声明中的值(value):

echo pack("ssssss", 0x204, 8 + strlen($value), $row, $col, 0x0, strlen($value));

您需要在“工作簿全局子流”中创建一个字体 xf 记录,然后将 0x0 值设置为该字体记录的 xf 标识符 +16。

您没有显示足够多的代码来确定需要在何处添加新字体记录,但字体记录的类型为 0x0031。您应该已经在编写默认字体记录 (xf = 0),因此您需要修改这部分代码以创建第二个 xf 为 1 的字体记录,这意味着您的 0x0 需要为 0x11 .

对于粗体,此字体记录需要在偏移量 6 处的值 0x02BC。为了将来引用,如果您想随后添加进一步的字体样式,斜体需要在偏移量 2 处的位掩码 0x0002,而删除线需要在偏移量 2 处的位掩码 0x0008 . 偏移量 4 指向颜色索引,如果要改变字体颜色,偏移量 8 表示上标/下标,偏移量 10 表示下划线类型。偏移量 11、12 和 14 标识字体系列、字符集和字体名称的大小,然后是字体名称本身。

您可以在 http://msdn.microsoft.com/en-us/library/cc313154(v=office.12).aspx 找到所有选项的完整详细信息。

正如您可能开始意识到的那样,这并不像您想象的那么简单和直接。这就是为什么我们大多数人在处理复杂的二进制格式时使用库,而不是尝试自己编写它。

关于PHP 到 Excel,粗体字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3457599/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com