Обрезать изображения MS Word с помощью элемента управления Matlab Activex
Я использую MATLAB для вставки и подписи графиков в Microsoft Word. Я хотел бы также обрезать эти изображения с помощью элемента управления ActiveX.
что-то вроде:
word = actxserver('Word.Application')
word.Visible = 1
op = invoke(word.Documents,'Add')
invoke(word.Selection,'Paste')
invoke(word.Selection,'CropBottom',CropAmount) <----- Except there is no function that will allow me to crop.
Я изменяю файловый обмен MATLAB "save2word.m"
Спасибо
1 ответ
Решение
Рассмотрим этот пример:
%# create plot and copy to clipboard
plot(rand(10,1))
print -dmeta
%# open MS-Word
Word = actxserver('Word.Application');
Word.Visible = true;
%# create new document
doc = Word.Documents.Add;
%# paste figure from clipboard
Word.Selection.Paste
%# crop the image
doc.InlineShapes.Item(1).PictureFormat.CropBottom = 100;
%# save document, then close
doc.SaveAs2( fullfile(pwd,'file.docx') )
doc.Close(false)
%# quit and cleanup
Word.Quit
Word.delete