InOpenXML - это элемент w:proofErr
, который может иметь тип правописания (атрибуты w:type="spellStart"
и w:type="spellEnd"
) или грамматический тип (атрибуты w:type="gramStart"
и w:type="gramEnd"
). Мне нужно извлечь ошибки из моего документа (оба типа), когда я создал небольшой тестовый документ (всего одно предложение с двумя ошибками), информация действительно была в XML-файле .docx
, но когда я сохранил весь текст, мне нужно для обработки (файл размером 5 МБ) информация не была включена в файл .docx
(вероятно, Word считает, что в больших документах это будет слишком много шума в данных XML).
Как я могу извлечь эту информацию даже в больших файлах?
Есть ли способ заставить MS Word включить информацию в файл .docx
?
Если нет, существует ли какой-либо сценарий VBA, который может помечать орфографические и грамматические ошибки, например, другим цветом или каким-либо специальным символом, так что информация становится жестко закодированным в файл?
Вот пример для предложения «Дети играют в гвардии» (в котором есть ошибка соглашения и орфографическая ошибка):
<w:t>The children </w:t>
</w:r>
<w:proofErr w:type="gramStart"/>
<w:r w:rsidRPr="008E17B0">
<w:rPr><w:lang w:val="en-US"/></w:rPr>
<w:t>plays</w:t>
</w:r>
<w:proofErr w:type="gramEnd"/>
<w:r w:rsidRPr="008E17B0">
<w:rPr><w:lang w:val="en-US"/></w:rPr>
<w:t xml:space="preserve"> in the </w:t>
</w:r>
<w:proofErr w:type="spellStart"/>
<w:r w:rsidRPr="008E17B0">
<w:rPr><w:lang w:val="en-US"/></w:rPr>
<w:t>guarden</w:t>
</w:r>
<w:bookmarkStart w:id="0" w:name="_GoBack"/><w:bookmarkEnd w:id="0"/>
<w:proofErr w:type="spellEnd"/>
<w:r w:rsidRPr="008E17B0">
<w:rPr><w:lang w:val="en-US"/></w:rPr>
<w:t>.</w:t>
</w:r>
Я хотел бы получить, например, «Дети ▶ играет ◀ в * Гарден *»