2010-03-17 21 views
5

मैं ओपनएक्सएमएल एसडीके 2.0 का उपयोग कर दो डॉक्स-दस्तावेज़ों में एक डॉक्स-दस्तावेज़ में विलय करने की कोशिश कर रहा हूं। दस्तावेजों को अपने स्टाइल और कस्टम हेडर और पादर्स खोए बिना विलय किया जाना चाहिए। मुझे उम्मीद है कि मैं इसे AltChunk और एक सेक्शन ब्रेक का उपयोग करके प्राप्त कर सकता हूं। लेकिन मैं इसे काम नहीं कर सकता।दस्तावेजों को मर्ज करें

क्या यह संभव है कि मैं क्या करने की कोशिश कर रहा हूं? क्या कोई मुझे यह संकेत दे सकता है कि इसे कैसे प्राप्त किया जाए?

उत्तर

1

'ओपन एक्सएमएल उत्पादकता उपकरण' का उपयोग करके मैंने एक डॉक्क्स-दस्तावेज़ की संरचना का विश्लेषण किया, और निष्कर्ष निकाला कि उनकी शैली, शीर्षलेख, पाद लेख, ... के साथ विलय दस्तावेज Altchunk का उपयोग कर बॉक्स से बाहर नहीं है। आप open xml sdk से अलग से टूल डाउनलोड कर सकते हैं।

मैं अब क्या कर रहा हूं, और क्या काम कर रहा है, सबकुछ मैन्युअल रूप से दस्तावेज़ में कॉपी कर रहा है, यह सुनिश्चित कर रहा है कि सभी स्टाइल-संदर्भ, हेडर-संदर्भ, पाद लेख-संदर्भ, ... संरक्षित हैं। इसका अर्थ यह है कि मैं उन्हें दस्तावेज़ में कॉपी करने से पहले और पुरानी आईडी से सभी आईडी को नए आईडी में बदलने से पहले उन्हें एक नया अद्वितीय आईडी देता हूं। ऐसा करने के लिए बहुत सारे कोड हैं, लेकिन उपर्युक्त टूल ने वास्तव में मदद की है।

एक सेक्शन ब्रेक जोड़ना भी काफी मुश्किल है। आपको पता होना चाहिए कि SectionProperties -tag अनुभाग के सभी गुणों का वर्णन करता है और यह कि -0ag-tag के तहत पिछले खंड के गुणों का वर्णन कर सकता है। तो एक नया सेक्शनबैक जोड़ना, इसका मतलब है कि पिछले SectionProperties की प्रतिलिपि बनाना और अनुभाग के अंतिम अनुच्छेद में टैग करें और Body -tag के तहत एक नया SectionProperties -tag जोड़ना। मुझे उत्पादकता उपकरण से भी बहुत सारी जानकारी मिली है।

+0

क्या आप इसके लिए कोड पोस्ट कर सकते हैं :-) कुछ समझने में आसान उदाहरण:> – MadBoy

+0

जेले का अनुभव मेरा दर्पण करता है। यह एक आसान काम नहीं है, और आपको लगता है कि इससे कहीं अधिक कोड की आवश्यकता है। शैलियों को सीधे रखना मुश्किल है क्योंकि आपको आईडी नाम दोनों के टकराव को रोकना है। –

4

उपर्युक्त उत्तर बिल्कुल सही नहीं है! यह वही है जो AltChunk को करने के लिए डिज़ाइन किया गया है, और यह बहुत अच्छा काम करता है!

नोट: (। स्पष्ट रूप से फाइल सेव हो गया है या डिस्क पर फ़ाइल अद्यतन नहीं किया जाएगा) है कि दस्तावेजों एक दस्तावेज़ में मर्ज नहीं किया जाएगा जब तक पद पहली बार के लिए फ़ाइल को खोलता है

देखें यह ब्लॉग उचित तरीके से इसे कैसे करें इस बारे में अधिक जानकारी के लिए: https://blogs.msdn.com/b/ericwhite/archive/2008/10/27/how-to-use-altchunk-for-document-assembly.aspx?Redirected=true

ps उत्पादकता उपकरण का उपयोग करके ओपन एक्सएमएल की जांच के लिए, मेरी राय है कि आधिकारिक विजुअल स्टूडियो ओपन एक्सएमएल ऐड-ऑन इंस्टॉल करें और विज़ुअल स्टूडियो से Office दस्तावेज़ों को जांचने के लिए उन्हें खोलें, यह बहुत सुविधाजनक है! :-)

+1

मेरे लिए भी काम करता है, हालांकि वर्ड लिबर ऑफिस के विपरीत altChunks को अनदेखा करता है। – metalheart

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