1

PowerPoint(少なくとも2007年、しかしおそらく他の人)では、いくつかの形の「いくつかの」テキストのスペルチェックを拒否します。

形だと思ったので変えてみましたが、直りませんでした。そこで、私が「感染した」テキストと呼んでいるものをいくつかのボックスに移動していくつかの実験を行い、それが何らかの形でテキストに添付されていることを確認しました。

既知の感染セクションと非感染セクションを含む非常に単純なファイルを取得して、.pptxを.zipに変換し、。\ ppt \ slides\slide1.xmlを開きました。

ここでは、スペルチェックを行わないテキストが次のように囲まれています。

<a:rPr noProof="1" ...

スペルト小麦、または「無視」が押されたテキストは、次のように囲まれています。

<a:rPr dirty="0" smtClean="0" ...

そして、スペルミスのあるテキストは、次の場所で見つかりました。

<a:rPr dirty="0" smtClean="0" err="1" ...

ファイル内のすべてのnoProof="1"を見つけて削除し、それをcountainerに返して、プレゼンテーションを開きました。そして、私が期待するようにすべてのスペルチェックが行われ、ファイルに損傷を与えることなく、すべてのボックスのすべてのエラーが見つかりました。

保存した後、silde1.xmlを再度開いて、正しい場所を見つけましdirty="0" smtClean="0"dirty="0" smtClean="0" err="1"

ここで問題となるのは、すべてのslide#.xmlファイルを手動で抽出し、テキストエディターで開き、「置換」を使用して修正せずに、この新しく見つかった知識を使用してファイルを修正するにはどうすればよいですか。

この抽出プロセスは自動化できますが、PowerPoint内でVBAから実行できる場合は、より簡単になります。

ありがとう、アンドリュー

4

3 に答える 3

1

いいね。VBAAPIを介してこれを行う方法があるかどうかはわかりません。ただし、OpenXMLAPIを使用してこれを実行できるはずです。これは、.netプロジェクトとしてコーディングする必要がある場合があります。

http://www.microsoft.com/download/en/details.aspx?id=5124

于 2012-04-13T09:48:19.437 に答える
1

「一部の」領域でのスペルチェックではなく、PowerPointに関する具体的な回答を求められたと思います。

私が使用しているSpellCheckAnywhereというプログラムを提案したいと思います。PowerPointを含むすべてのWindowsプログラムにスペルチェックを追加します。したがって、入力した場所を問わず、任意のWindowsプログラムでスペルチェックを実行できます。

スペルチェックは、Wordでさえも提供するよりも、非常に高品質で、はるかに優れた単語の提案です。

スピードタイピングも付属しています。

したがって、PowerPointのソリューションを探している間、このプログラムは、スペルチェックのニーズ全体に対するソリューションを提供します。

ありがとう、Tomer

于 2012-04-15T10:53:29.927 に答える
1

私はついに、を使用してスクリプト(少なくともプロセスの一部)を使用してこれを修正する方法を見つけましたpowershell

  1. ファイルの名前を次のように変更し.pptxます.zip
  2. 案内する\ppt\slides
  3. ファイルを抽出しslide*.xmlます
  4. 走るWindows Powershell
  5. 抽出されたxmlファイルを含むフォルダーをナビゲートします
  6. 次のコードを貼り付けます。

    $configFiles=get-childitem . *.xml -rec

    foreach ($file in $configFiles) { (Get-Content $file.PSPath) | Foreach-Object {$_ -replace ' noProof="1"', ''} | Set-Content $file.PSPath }

  7. ファイルをzipxmlファイルに戻します

  8. ファイルの名前をに.zip戻します。.pptx
  9. 結果:Powerpointスペルチェックが正しく行われるファイル。
于 2012-08-28T14:42:59.827 に答える