richtextbox顯示rtf格式代碼如下:

rtf格式檔案內容如下:

程式顯示如下:

各位大神,這是為什么啊?richtextbox不是可以顯示圖片的嗎??
uj5u.com熱心網友回復:
可以顯示圖片,貌似需要用到粘貼板吧。Bitmap bmp = new Bitmap(openFileDialog1.FileName);//獲得圖片
Clipboard.SetDataObject(bmp, false);//將圖片放在剪貼板中
if (richTextBox1.CanPaste(DataFormats.GetFormat(DataFormats.Bitmap)))
richTextBox1.Paste();//粘貼資料
uj5u.com熱心網友回復:
richTextBox.RTF = File.ReadAllText(".....rtf");uj5u.com熱心網友回復:
string spath = @"C:\Users\LLH920\Desktop\畢設\程式\多個word合并\1.docx";richTextBox1.Rtf = File.ReadAllText(DocTOrtf (spath));
我試過了 圖片還是顯示不出來
uj5u.com熱心網友回復:
我試過了 圖片還是顯示不出來
uj5u.com熱心網友回復:
word里面有文字和圖片 不能只操作圖片啊
uj5u.com熱心網友回復:
點點點,你舉例是RTF檔案,實際用了word檔案。
Word可以另存為RTF格式。
要是想加載Word檔案的話估計你得找找一些第三方的控制元件,例如Dev之類的
uj5u.com熱心網友回復:
你將word轉存成RTF是否正確,如果正確你以前的方法應該是可行的啊。
uj5u.com熱心網友回復:
string spath = @"C:\Users\LLH920\Desktop\畢設\程式\多個word合并\1.docx";
richTextBox1.Rtf = File.ReadAllText(DocTOrtf (spath));
我試過了 圖片還是顯示不出來
點點點,你舉例是RTF檔案,實際用了word檔案。
Word可以另存為RTF格式。
要是想加載Word檔案的話估計你得找找一些第三方的控制元件,例如Dev之類的
我用的RTF格式的檔案,就是用word轉成RTF得到的。對于您的這句“你舉例是RTF檔案,實際用了word檔案”,我不太明白。
uj5u.com熱心網友回復:
string spath = @"C:\Users\LLH920\Desktop\畢設\程式\多個word合并\1.docx";
richTextBox1.Rtf = File.ReadAllText(DocTOrtf (spath));
我試過了 圖片還是顯示不出來
點點點,你舉例是RTF檔案,實際用了word檔案。
Word可以另存為RTF格式。
要是想加載Word檔案的話估計你得找找一些第三方的控制元件,例如Dev之類的
我用的RTF格式的檔案,就是用word轉成RTF得到的。對于您的這句“你舉例是RTF檔案,實際用了word檔案”,我不太明白。
就是說,richTextBox這個控制元件看起來只支持RTF、純文本格式的內容,如果你是想用它來打開一個Word檔案,可能格式不支持導致打不開。
我有寫一個Demo測驗了下,將Word另存為RTF格式的檔案(檔案擴展名為.rtf)后,使用上述說的方法賦值給RichTextBox是可以打開,并且圖片也能顯示出來。
至于你的為什么不行可能你要自己除錯下從檔案讀取到的字串是不是Rtf格式字串。
uj5u.com熱心網友回復:
你好,我照著這個樣子試了一次,發現讀取出的文字可以正常顯示,圖片可以看到有占位,但是什么也看不到,這是為什么?
string spath = @"C:\Users\LLH920\Desktop\畢設\程式\多個word合并\1.docx";
richTextBox1.Rtf = File.ReadAllText(DocTOrtf (spath));
我試過了 圖片還是顯示不出來
點點點,你舉例是RTF檔案,實際用了word檔案。
Word可以另存為RTF格式。
要是想加載Word檔案的話估計你得找找一些第三方的控制元件,例如Dev之類的
我用的RTF格式的檔案,就是用word轉成RTF得到的。對于您的這句“你舉例是RTF檔案,實際用了word檔案”,我不太明白。
就是說,richTextBox這個控制元件看起來只支持RTF、純文本格式的內容,如果你是想用它來打開一個Word檔案,可能格式不支持導致打不開。
我有寫一個Demo測驗了下,將Word另存為RTF格式的檔案(檔案擴展名為.rtf)后,使用上述說的方法賦值給RichTextBox是可以打開,并且圖片也能顯示出來。
至于你的為什么不行可能你要自己除錯下從檔案讀取到的字串是不是Rtf格式字串。
uj5u.com熱心網友回復:
出現這個問題可能是這個圖片存盤在RTF里面的格式或者資料有問題,導致讀取的時候沒能還原出來。也可能是RichTextbox讀取RTF格式檔案也是有限制的,導致讀取不完整。
我對RTF格式也不是很了解。
我只提供可能可以解決問題的思路:
1. 你將RTF里面的內容用Word打開,然后把內容全部復制,粘貼到WinForm的RichTextBox中,看控制元件顯示的效果跟Word里面顯示的效果或者說資料的真實效果是否有出入,這樣就能判斷是不是因為RichTextBox本身有做限制。
2. 如果顯示效果上沒差別,那你試試吧RichTextBox的RTF屬性(string型別)保存到文本檔案中,然后跟你原來的RTF格式檔案中的內容做對比。如果圖片有區別應該是能看出差異的了。
3. 你用Word打開你那個RTF檔案,是不是就能正常顯示。
注:資料不宜太多,特別圖片不能太大,圖片在RTF中保存好像是按位圖那樣保存的。
uj5u.com熱心網友回復:
只支持bmp格式圖片uj5u.com熱心網友回復:
richtext直接輸入圖片,非粘貼板https://www.haolizi.net/example/view_14837.html
uj5u.com熱心網友回復:
流要設定下。uj5u.com熱心網友回復:
string path2 = System.Environment.CurrentDirectory;
string imgpath = Path.Combine(path2, "images", "lkf.png");
Clipboard.SetImage(Image.FromFile(imgpath));
richTextBox1.Paste();
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/133045.html
標籤:C#
上一篇:.ashx檔案無法重定向的問題!!有大佬能幫我看看嘛
下一篇:本人計算機小白,c#問題求教
