openxml - 如何通过 OpenXML 将图像设置为矩形?
问题描述
我有一个Rectange
模板文件PPTX
和设置name ="Img"
我想将图像设置为Rectange
:
这是我的代码,但我不能调用shape.Append(part);
:
// Open the source document as read/write.
using (var presentationDocument = PresentationDocument.Open(strFile, true))
{
var presentationPart = presentationDocument.PresentationPart;
var templatePart = GetSlidePartsInOrder( presentationPart).Last();
for(int i = 0; i < 2; i++)
{
int ifile = i + 1;
string path = @"F:\AUTOM\t"+ ifile+".png";
var newSlidePart = CloneSlide(templatePart);
// Get the shape tree that contains the shape to change.
P.ShapeTree tree = newSlidePart.Slide.CommonSlideData.ShapeTree;
var shapes = from shape in newSlidePart.Slide.Descendants < P.Shape>()
select shape;
foreach (var shape in shapes)
{
if(shape.OuterXml.Contains("name=\"Img\""))
{
var part = newSlidePart.AddImagePart(ImageExtension(path));
using (var stream = File.OpenRead(path))
{
part.FeedData(stream);
}
**//shape.Append(part);**
}
else
{
// Specify the text of the title shape.
foreach (Paragraph paragraph in shape.Descendants().OfType<Paragraph>())
{
foreach (Run run in paragraph.Elements<Run>())
{
run.Text = new Text("Your new text");
}
}
}
}
AppendSlide(presentationPart, newSlidePart);
}
// Save the modified presentation.
presentationPart.Presentation.Save();
DeleteTemplateSlide(presentationDocument);
}
如何通过 OpenXML 将图像设置为矩形?
解决方案
推荐阅读
- python - python 中的 os.mknod() 和 open('FILENAME', 'a') 有什么区别、速度和实现?
- automation - Kubernetes作业成功后复制报告
- javascript - Google API 无故响应 403 禁止
- scala - SCALA 在 listFiles 上包含多个条件
- c# - 无法使用 ngrok 在本地测试我的 Telegram Bot
- spring - 如何使用 Spring Security 使用 ping 访问和在标头中传递的用户名对经过预身份验证的 LDAP 用户进行身份验证?
- bash - 在不使用 ARGV 的情况下将参数从 bash 传递到 perl
- c++ - 如何将 static_cast 转换为变量的类型
- asp.net-mvc - GetAuthCookie() 和更改域 cookie
- angular - Angular:订阅 Observable 时,AgGrid 不会更新行