草庐IT

xml - OOXML : How is a table header (heading) encoded?

coder 2024-06-30 原文

我在 Word 2007 中创建了两个文档。它们都是空表。一个选中了“标题”选项。我无法确定切换 header 的两个文档之间有什么不同。

我能发现的唯一不同之处是 w:tblLook 元素上的 w:val 属性。在标题开关打开的情况下,它在文档上设置为 04A0。如果不勾选“航向”选项,该值为 0480。

文档指出 w:val 的有效值为:

0×0020  Apply first row conditional formatting
0×0040  Apply last row conditional formatting
0×0080  Apply first column conditional formatting
0×0100  Apply last column conditional formatting
0×0200  Do not apply row banding conditional formatting
0×0400  Do not apply column banding conditional formatting

因此,这个数字似乎表明在位掩码中设置了 32、128 和 1024。

这意味着设置了以下内容:

0×0400  Do not apply column banding conditional formatting
0×0080  Apply first column conditional formatting
0×0020  Apply first row conditional formatting

鉴于 0x0400 和 0x0080 似乎无关紧要,这是关键吗?:

0×0020  Apply first row conditional formatting

最佳答案

是的,0x0020(应用第一行条件格式)是 “标题”选项的键。

w:tblLook 元素的 w:val 属性是所谓的 过渡迁移功能,只应在文档中使用 过渡一致性类(MS Word 2007 生成此类文档)。

请参阅 ECMA Office Open XML 第 4 部分 - 过渡迁移特征规范

了解更多信息。 第 14.3.11 段 描述了 w:tblLook 的附加属性 (w:val)。 您可以在此处下载规范 ECMA .使用 ECMA-376 第 4 版第 4 部分链接。

在新版本的 Microsoft Office (> 2007) 中,仅使用 w:val 属性 为了向后兼容。有一个名为 w:firstRow="1" 的新属性,用于 0x0020 值(第一行条件格式)。请参阅以下链接 MSDN获取有关 w:firstRow 属性的更多信息。

如果将 MS Word 2007 文档与 MS Word 2010/2013 文档进行比较,您会发现 MS Word 2007 仅使用 w:val 属性,而 MS Word 2010/2013 使用 w:val和 属性 w:firstColumn, w:firstRow, w:lastRow, lastColumn, w:noHBand, w:noVBand

如果您在“严格打开 XML 文档”模式下保存 word 文档 (MS Word 2013),w:val 属性将被转换为 w:firstColumn、w:firstRow、w:lastRow、lastColumn、w:noHBand 和 w:noVBand 属性(因为新的严格文档不应使用 w:val)。

关于xml - OOXML : How is a table header (heading) encoded?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23134215/

有关xml - OOXML : How is a table header (heading) encoded?的更多相关文章

  1. ruby-on-rails - 如何从 format.xml 中删除 <hash></hash> - 2

    我有一个对象has_many应呈现为xml的子对象。这不是问题。我的问题是我创建了一个Hash包含此数据,就像解析器需要它一样。但是rails自动将整个文件包含在.........我需要摆脱type="array"和我该如何处理?我没有在文档中找到任何内容。 最佳答案 我遇到了同样的问题;这是我的XML:我在用这个:entries.to_xml将散列数据转换为XML,但这会将条目的数据包装到中所以我修改了:entries.to_xml(root:"Contacts")但这仍然将转换后的XML包装在“联系人”中,将我的XML代码修改为

  2. ruby-on-rails - 如何在 Rails 3 中禁用 XML 解析 - 2

    我想禁用HTTP参数的自动XML解析。但我发现命令仅适用于Rails2.x,它们都不适用于3.0:config.action_controller.param_parsers.deleteMime::XML(application.rb)ActionController::Base.param_parsers.deleteMime::XMLRails3.0中的等价物是什么? 最佳答案 根据CVE-2013-0156的最新安全公告你可以将它用于Rails3.0。3.1和3.2ActionDispatch::ParamsParser::

  3. ruby - 如何使用 Nokogiri::XML::Builder 生成动态标签? - 2

    我正在遍历数组中的一组标签名称,我想使用构建器打印每个标签名称,而不是求助于“我认为:builder=Nokogiri::XML::Builder.newdo|xml|fortagintagsxml.tag!tag,somevalendend会这样做,但它只是创建名称为“tag”的标签,并将标签变量作为元素的文本值。有人可以帮忙吗?这个看起来应该比较简单,我刚刚在搜索引擎上找不到答案。我可能没有以正确的方式提问。 最佳答案 尝试以下操作。如果我没记错的话,我添加了一个根节点,因为Nokogiri需要一个。builder=Nokogi

  4. ruby - 如何让 Nokogiri 解析并返回 XML 文档? - 2

    这是一些奇怪的例子:#!/usr/bin/rubyrequire'rubygems'require'open-uri'require'nokogiri'print"withoutread:",Nokogiri(open('http://weblog.rubyonrails.org/')).class,"\n"print"withread:",Nokogiri(open('http://weblog.rubyonrails.org/').read).class,"\n"运行此返回:withoutread:Nokogiri::XML::Documentwithread:Nokogiri::

  5. ruby - 模式加载时出现 Nokogiri::XML::Schema SyntaxError - 2

    我正在尝试加载SAML协议(protocol)架构(具体来说:https://www.oasis-open.org/committees/download.php/3407/oasis-sstc-saml-schema-protocol-1.1.xsd),但在执行此操作之后:schema=Nokogiri::XML::Schema(File.read('saml11_schema.xsd'))我得到这个输出:Nokogiri::XML::SyntaxErrorException:Element'{http://www.w3.org/2001/XMLSchema}element',att

  6. ruby - 为什么我必须对 Net::HTTP 请求的安全字符进行 URI.encode? - 2

    我尝试使用Net::HTTP向Twitter发送GET请求(出于隐私原因替换了用户ID):url=URI.parse("http://api.twitter.com/1/friends/ids.json?user_id=12345")resp=Net::HTTP.get_response(url)这会在Net::HTTP中引发异常:NoMethodError:undefinedmethodempty?'for#from/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:1

  7. ruby-on-rails - encode_www_form 将空格转换为 + 而不是 %20 - 2

    我正在尝试从使用RubyonRails的散列创建http参数,我尝试使用URI.encode_www_form(params),但这没有正确生成参数。下面是我的哈希值params['Name'.to_sym]='NiaKun'params['AddressLine1'.to_sym]='AddressOne'params['City'.to_sym]='CityName'这个方法把空格转成+,我要的是把空格转成%20我收到"Name=Nia+Kun&AddressLine1=Address+One&City=City+Name"但我需要将此空格转换为%20

  8. ruby - 在我的 ramaze 应用程序上显示 £ 符号时,我收到 "incompatible character encodings: CP850 and UTF-8" - 2

    在我的ramaze应用程序上显示£符号时,我收到“不兼容的字符编码:CP850和UTF-8”。我怎样才能摆脱这个错误?我的head标签中有UTF-8元标签。当我用键盘输入£符号时会发生这种情况。看。我已将以下代码放入我的ruby​​文件中,但没有解决问题。#encoding:UTF-8Encoding.default_external='utf-8'Encoding.default_internal=Encoding::UTF_8 最佳答案 尝试强制编码以查看是否可以解决问题:your_string.force_encoding(:

  9. ruby-on-rails - 来自 cucumber 的 HTTP POST XML 内容 - 2

    我正在尝试通过POST将XML内容发送到一个简单的Rails项目中的Controller(“解析”)方法(“索引”)。它不是RESTful,因为我的模型名称不同,比如“汽车”。我在有效的功能测试中有以下内容:deftest_index...data_file_path=File.dirname(__FILE__)+'/../../app/views/layouts/index.xml.erb'message=ERB.new(File.read(data_file_path))xml_result=message.result(binding)doc=REXML::Document.ne

  10. Ruby String.encode 仍然给出 "invalid byte sequence in UTF-8" - 2

    在IRB中,我正在尝试以下操作:1.9.3p194:001>foo="\xBF".encode("utf-8",:invalid=>:replace,:undef=>:replace)=>"\xBF"1.9.3p194:002>foo.match/foo/ArgumentError:invalidbytesequenceinUTF-8from(irb):2:in`match'知道出了什么问题吗? 最佳答案 我猜"\xBF"已经认为它是用UTF-8编码的,所以当你调用encode时,它认为你正在尝试编码一个UTF-8中的UTF-8字符

随机推荐