2009-04-21 19 views
5

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

private void btnConvert_Click(object sender, EventArgs e) 
    { 
     if (string.IsNullOrEmpty(txtFileName.Text)) 
     { 
      MessageBox.Show("Choose a document to convert", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); 
      txtFileName.Focus(); 
      return; 
     } 

     ApplicationClass wordApp = new ApplicationClass(); 
     object objectMissing = Missing.Value; 

     try 
     { 
      object fileName = txtFileName.Text; 
      FileStream fs = new FileStream(fileName.ToString(), FileMode.Open, FileAccess.Read); 
      Byte[] data = new Byte[fs.Length]; 
      fs.Read(data, 0, data.Length); 

      Document doc = wordApp.Documents.Open(ref fileName, ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing, 
            ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing, 
            ref objectMissing, ref objectMissing, ref objectMissing); 


      byte[] range = (byte[]) wordApp.ActiveDocument.Content.EnhMetaFileBits; 
      if (range != null) 
      { 
       MemoryStream ms = new MemoryStream(range); 
       Metafile mf = new Metafile(ms); 
       picImage.Height = mf.Height; 
       picImage.Width = mf.Width; 
       mf.Save("c:\\test.png", ImageFormat.Png); 
       picImage.Image = Image.FromFile("c:\\test.png"); 
      } 
     } 
     finally 
     { 
      wordApp.Quit(ref objectMissing, ref objectMissing, ref objectMissing); 
     } 
    } 

उत्तर

0

माइक्रोसॉफ्ट दस्तावेज़ छवि लेखक का उपयोग कर दस्तावेज़ को टीआईएफएफ के रूप में प्रिंट करने के बारे में कैसे?

0

आप इसे सहेजने के बाद प्रोग्राम को स्वचालित रूप से आकार बदल सकते हैं।

1

जो कुछ भी आकार यह है, तो ImageMagick का उपयोग करेगा करने के लिए परिवर्तित: http://www.imagemagick.org/script/index.php आकार बदलने या जो कुछ भी अन्य पोस्ट प्रसंस्करण आप की जरूरत करने के लिए (यह एक बहुत कुछ कर सकते)

3

यह पता चला वास्तव में सरल होने के लिए:

private void renderImage(byte[] imageData) 
    { 
     using (MemoryStream ms = new MemoryStream(imageData)) 
     { 
      Image image = Image.FromStream(ms); 
      picImage.Image = image; 
     } 
    } 

यह छवि के रूप में पहला पृष्ठ दिखा रहा है, लेकिन यह अन्य पृष्ठों को प्रस्तुत करने के लिए पर्याप्त आसान होना चाहिए।

उन सभी जो

0

जवाब के लिए धन्यवाद कॉपी पावरपोइंट (अगर यह कॉपी किया जा सकता है) और फिर आप इच्छित प्रारूप की एक छवि में स्लाइड को बचा सकता है के लिए सामग्री

+3

यह वास्तविक सवाल का जवाब नहीं है , ओपी एक प्रोग्रामेटिक समाधान के लिए स्पष्ट रूप से पूछ रहा है। – twoleggedhorse

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