use*_*899 4 c# wpf image richtextbox
我想聊天内嵌图片.richtextbox很好,因为我可以在其中放置图像,但我想将文本/图像分开发送.-first:发送文本(并在文本中放置图像占位符).-second:发送图像并用占位符替换它.
为此,我需要删除richtextbox中的所有图像(并将它们分开发送).但是我怎么能找到这些图像呢?
顺便说一下:是否可以根据richtextbox的宽度重新缩放图像?
谢谢 :)
要查找RichTextBox中的所有图像,您需要遍历所有段落及其内联; 然后你可以用图像做任何你需要的事情.例如,以下代码将增加RichTextBox内所有图像的大小(1个像素).
public static void ResizeRtbImages(RichTextBox rtb)
{
foreach (Block block in rtb.Blocks)
{
if (block is Paragraph)
{
Paragraph paragraph = (Paragraph)block;
foreach (Inline inline in paragraph.Inlines)
{
if (inline is InlineUIContainer)
{
InlineUIContainer uiContainer = (InlineUIContainer)inline;
if (uiContainer.Child is Image)
{
Image image = (Image)uiContainer.Child;
image.Width = image.ActualWidth + 1;
image.Height = image.ActualHeight + 1;
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4017 次 |
| 最近记录: |