2012-03-15 5 views
0

では無視され、文書はテキストボックスを含んでテキストボックスのために生成された要素がこの形態である:オープンXML SDK:代替コンテンツは、私がOpen XML SDKを使用してWord文書を作成していますWord 2007の

<mc:AlternateContent> 
    <mc:Choice Requires="wps"> 
    <w:drawing> 
     // Drawing for word 2010 
    </w:drawing> 
    </mc:Choice> 
     <mc:Fallback> 
     <w:pict> 
     // Pict for word 2007 
     </w:pict> 
     </mc:Fallback> 
</mc:AlternateContent> 

生成ドキュメントは2007年と2010年のフォーマットに対して有効です。ワード2010でテキストボックスを開き、ワード2007でテキストボックスを開くとテキストボックスが空の場合にドキュメントが開かれます。

は、どのように私は言葉2010年と2007年

よろしく両方で開くことができる代替コンテンツを追加することができます。私は、テキストボックスにコンテンツコントロールを追加してやっている


はい、あなたは、コンテンツコントロールは私が追加していることがわかった調査の後、(外部DOCXからコンテンツをインポートする)altchunkが含まれている権利Taterheadをしています(word2010で使用されている)描画セクションのtextBox要素にコンテンツコントロール要素(sdtBlock)を追加しますが、Word 2007で使用されている画像セクションにコンテンツコントロールを追加することができません。そのため、空のコンテンツコントロール。だから私は、図面と写真の両方でtextBoxsに(altchunkを含む)、コンテンツコントロールを追加する必要があり、私は、SdtBlock要素のクローンを作成する

textBoxContentForPict.Append(sdtBlock.CloneNode(true)); 

altchunk要素がクローン化されたsdtBlockで失われる問題を試してみてください。 textBoxContentForDrawing.Append(sdtBlockWithAltchunck)とtextBoxContentForPicture.Append(sdtBlockWithAltchunck)の2つのtextBoxにSdtBlockを追加するトリックを見つける手助けができれば、2010年の正しい内容を得ることができます。

よろしく

Reagards

答えて

1

おそらく、あなたの//pict for word 2007が正しくありません。 2010年に描画ブロックの単語に配置し、2010年にレンダリングするかどうかを確認します。代替コンテンツブロックの外に置き、2007年にレンダリングすることを確認してください。

1

問題が解決しました。 SdtBlock