我在尝试从办公自动化压缩图像时遇到一些问题。我可以手动执行此操作:
- 右键单击图像
- 选择“格式化图片”
- 图片选项卡
- 压缩按钮
- 应用于“文档中的所有图片”
我在 api 的任何地方都找不到这个方法。注意:我使用 Netoffice 作为办公自动化的包装器来绕过版本问题,但这在这种特殊情况下并不重要,因为它直接映射到 vsto
我可以处理每张图像,但我被困得更远。
NetOffice.WordApi.Application _wordApplication = NetOffice.WordApi.Application.GetActiveInstance();
NetOffice.WordApi.Document _wordDoc = NetOffice.WordApi.Application.GetActiveInstance().ActiveDocument;
List<string> base64StringList = new List<string>();
_wordApplication.DisplayAlerts = WdAlertLevel.wdAlertsNone;
int count = _wordDoc.InlineShapes.Count;
for (int i = 0; i < count; i++)
{
NetOffice.WordApi.InlineShape shape = _wordDoc.InlineShapes[i + 1];
shape.Select();
//figure out some clever way to compress the image
}
非常感谢