我可以从Word文件中读取图像和形状,然后用C#实际显示在图片框控件中吗?
实际上我有一个Word文件,其中我有多个答案的问题,一些问题也包含图像和形状。
所以我想要做的是阅读C#中的文档并显示要在pictureBoxcontrol
中显示的图像和形状。那么它是否可能在C#中,如果它是什么解决方案。我在Google上搜索了很多但没有找到。
答案 0 :(得分:2)
我暂时没有完成Word自动化,但我从未使用过此功能,但您可以尝试使用Range.Copy
- 您必须找到各种Shape
对象和图片,然后复制它们他们尝试将它们粘贴到你的图片框中。
答案 1 :(得分:1)
您可以在word文档或c#代码中创建宏。 我不知道如何从你的c#代码“模拟”一个vba宏,但我知道你会在stackoverflow上找到很多解决方案。你需要的代码是类似的。
activeDocument.Shapes(x).select
或
activeDocument.InlineShapes(x).select
你必须检查你的图像是否为inlineshape或shape。然后用
复制它Selection.copy
这是vba代码。 图像现在在剪贴板中,因此您需要按照c#代码检索它。
if (Clipboard.ContainsImage())
{
Image img = Clipboard.GetImage();
}
答案 2 :(得分:1)
您可以像上面的代码一样遍历Word文档。 它基本上做的是,它需要每张图片,图表,表格。
foreach (NetOffice.WordApi.InlineShape s in docWord.InlineShapes)
{
#region Set Shapes
if (s.Type==NetOffice.WordApi.Enums.WdInlineShapeType.wdInlineShapePicture && s.AlternativeText.Contains("|"))
{
Clipboard.SetImage(s.Select());
}
}
现在将其设置为PictureBoxControl:
pictureBox1.Image = new Bitmap(@"\Program Files\PictureBoxControl\tinyemulator_content.jpg");
来自剪贴板:
pictureBox1.Image = new Bitmap(Clipboard.GetImage());