Я пытаюсь изменить текст и изображения в текстовом документе, используя C# и автоматизацию слов. У меня это нормально работает для текста, где я делаю что-то вроде фрагмента ниже, но я даже не знаю, как начать замену изображения.Word Automation: замените изображение с помощью C#
Любая помощь очень ценится!
Оливер
using Microsoft.Office.Interop.Word;
...
private static Application WordApp;
private static object missing = System.Reflection.Missing.Value;
private static object yes = true;
private static object no = false;
...
object search;
object replace;
object replaceAll =
Microsoft.Office.Interop.Word.WdReplace.wdReplaceAll;
object filename = SourceFile;
object destination = DestinationFile;
Document d = WordApp.Documents.Open(
ref filename, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing, ref missing,
ref missing);
d.Activate();
search = "OLDSTRING";
replace = "NEWSTRING";
WordApp.Selection.Find.Execute(
ref search, ref yes, ref yes, ref no, ref no, ref no, ref yes,
ref missing, ref missing, ref replace, ref replaceAll,
ref missing, ref yes, ref missing, ref missing);
Любопытный какие решения вы пытаетесь сделать. Является ли это функциональностью, которую вы размещаете внутри надстройки Word, или это какая-то периодическая автоматизация из внешнего приложения? Если внешний, я бы предпочел переопределить WordML через OpenXML SDK на 2007 год или просто повредить w/xml if 2003 вместо этого. Гораздо быстрее и легче сделать. –
Просто предложение. Используйте VB. Это упростит вашу жизнь в COM Automation. Что касается замены изображений, вы можете посмотреть в «Диапазоны» и, возможно, выполнить итерацию через текст и объекты в них, которые ищут типы объектов изображения. – 2009-07-15 01:30:09
@roygbiv: +1. VB намного проще для автоматизации COM – shahkalpesh