2012-09-19 15 views
5

मुझे ओपन एक्सएमएल के साथ एक .docx उत्पन्न करने में एक अजीब समस्या है। मैं एक TableCell एक Paragraph तो है कि Run तो Text इस तरह उत्पन्न होते हैं:ओपन एक्सएमएल पैराग्राफ स्पेसिंग

tblRow.Append(new TableCell(new Paragraph(GetPropertiesForStyle("TableDescription"), new Run(new Text(colName))))); 

GetPropertiesForStyle विधि विशिष्ट पैराग्राफ के लिए ParagraphProperties वापस आती है और शैली सेट करता है। यह सब ठीक काम करता है, हालांकि तालिका पंक्ति के भीतर पहले सेल में पहले डबल स्पेसिंग होता है और अंतिम सेल के बाद डबल स्पेसिंग होता है - बीच में सभी कोशिकाएं पूरी तरह ठीक लगती हैं।

enter image description here

मेरे शैली विन्यास इस तरह दिखता है:

new Style(
    new StyleName() { Val = "TableDescription" }, 
    new StyleParagraphProperties(
     new ParagraphBorders(
      new BottomBorder() { Val = BorderValues.None } 
     ), 
     new SpacingBetweenLines() { Before = "100", After = "100", Line = "200", LineRule = LineSpacingRuleValues.Exact }, 
     new TableCellVerticalAlignment() { Val = TableVerticalAlignmentValues.Center } 
    ) 
), 

मैं उत्पादकता उपकरण का उपयोग कर उत्पादन किया एक्सएमएल जाँच की है और यह बिल्कुल ठीक गुण को लागू करने की है। प्रत्येक TableCell में निम्न कॉन्फ़िगरेशन है (वहां कुछ अतिरिक्त मार्जिन गुण हैं और एक शेडर भरें जिसे मैंने ब्रेवटी के लिए छोड़ा है)।

<w:tc> 
    <w:p> 
     <w:pPr> 
      <w:pStyle w:val="TableDescription" /> 
     </w:pPr> 
     <w:r> 
      <w:t>Reporting Period</w:t> 
     </w:r> 
    </w:p> 
</w:tc> 

कोई विचार क्या चल रहा है?

उत्तर

5

मेरी शैली के लिए निम्न जोड़कर इसे ठीक करने प्रबंधित:

new ContextualSpacing() { Val = false } 

कौन सा अनचेक करना पैरा विकल्पों में एक ही शैली के पैराग्राफ़ के बीच रिक्ति न जोड़ें शब्द कहता है।

संबंधित मुद्दे