Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
01.09.2021, 11:46
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
Delphi 7, word 2007 Вставляю картинку, никак не могу сделать обтекание текстом вокруг картинки перепробовал всякие варианты какие в инете нашел, ничего не выходит, выдает ошибку Method 'WrapFormat' not supported by automation object Как сделать это обтекание? код ниже Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39.
по умолчанию вставляется в строку, т.е. идет строка, вставленная картинка, продолжение строки надо сделать обтекание текстом пл контуру ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 11:56
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
Anton_1234, google говорит // Чтобы установить обтекание текста, конвертируем рисунок в фигуру Shape = Picture.ConvertToShape(); Shape.WrapFormat.Type = 0; // по контуру... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 13:03
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
peter64 Anton_1234, google говорит // Чтобы установить обтекание текста, конвертируем рисунок в фигуру Shape = Picture.ConvertToShape(); Shape.WrapFormat.Type = 0; // по контуру... это 1С-ный код, отсюда https://forum.mista.ru/topic.php?id=759385 попробовал сделать также Код: pascal 1. 2.
ругается "Недопустимое число параметров" по ссылке говорят про книжку корняков программирование документов и приложений ms office в delphi попробую почитать ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 13:25
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 14:01
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
Anton_1234 попробовал сделать также Код: pascal 1.
p.s. Ну в общем вот так попробуйте: Код: pascal 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 14:07
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
peter64, Спасибо, я знал, что я на форуме друзей Вроде победил кое-как Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
метку pict_h не стирает, еще раз поиск и замена на нулевую строку ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 14:13
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
s62 Anton_1234 попробовал сделать также Код: pascal 1.
всё правильно написано. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 14:14
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
s62 p.s. Ну в общем вот так попробуйте: Код: pascal 1.
с InlineShapes как-то не получилось у меня (в предыдущем посте написал как сделал, может пригодится кому, горемыке такому же как я) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 14:16
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
Мимопроходящий, ну может, судя по тому, что у ТС работает. Но насколько я помню (как правило использовал не OLE-варианты, а интерфейсы), при OLE-вызовах правильно будет и так, как я написал. Это выглядит в программе Delphi не так странно. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 18:26
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
s62 при OLE-вызовах правильно будет и так, как я написал. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 18:40
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
_Vasilisk_ s62 при OLE-вызовах правильно будет и так, как я написал. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 18:47
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
s62 Но вот через интерфейсы, то, что написано было под Office 2000 (больше Excel, но Word тоже), безошибочно работает и с новейшими версиями Офиса. Наверное потому, что интерфейсы же обычно не меняют, а добавляют новые. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 18:59
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
_Vasilisk_, MS в этом отношении по-моему более последователен, не ломает совместимость - в Офисе и в интерфейсах IE (ну, IE уже уходит в прошлое). Тогда задам вопрос, он касается темы. Два варианта вызова, оба через позднее связывание, как у ТС, Код: pascal 1. 2. 3. 4. 5. 6.
и как я написал Код: pascal 1.
, принципиально отличаются (за счет указания имен параметров)? Т.е. если изменится кол-во параметров, то вариант ТС продолжит работать, а предложенный мной нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 19:09
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
s62 MS в этом отношении по-моему более последователен, не ломает совместимость s62 Т.е. если изменится кол-во параметров, то вариант ТС продолжит работать, а предложенный мной нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 19:15
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
_Vasilisk_ Вы читать умеете? Ломалась совместимость именно от версии .net. Или это не MS? авторНе давно нужно было в Delphi работать с библиотекой написанной на C#. Стандартный метод - работа через COM. Так вот оказалось, что в разных версиях .net у импортируемых интерфейсов получается разное число методов. На C# есть много разных библиотек разных авторов. _VasiliskИменно так Спасибо, понятно. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 22:04
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
s62 тут не написано, чья библиотека. _Vasilisk_ приходилось для каждой версии .net (сама библиотека при этом не менялась), ... |
|||
:
Нравится:
Не нравится:
|
|||
|
01.09.2021, 22:37
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
_Vasilisk_, да, вторую цитату я просмотрел, думал, что вы говорите о разных версиях сборок для разных версий .NET. (То есть, что в самой библиотеке количество методов менялось). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.09.2021, 10:30
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
_Vasilisk_ Я сам находил в офисе методы, где изменялось число параметров в разных версиях офиса Насколько я знаю, если меняется, то только в сторону добавления в конец. Т.е. все старые варианты вызовов продолжат работать ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.09.2021, 12:37
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
Fr0sT-Brutal Насколько я знаю, если меняется, то только в сторону добавления в конец. Т.е. все старые варианты вызовов продолжат работать ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.09.2021, 14:15
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
_Vasilisk_, Мимопроходящий или кто знает. А где разбираются параметры, заданные в таком виде? Код: pascal 1. 2. 3. 4. 5. 6.
Если мы используем Ole-варианты, то компилятор Delphi всё это, насколько я знаю, преобразует в вызов IDispatch.GetIdsOfNames и затем IDispatch.Invoke. Разбор параметров делает компилятор Delphi или они в таком виде отправляются серверу автоматизации? Но первый параметр в функции (FileName), например, строка: https://docs.microsoft.com/ru-ru/office/vba/api/word.shapes.addpicture Непонятно, как может выражение FileName:=PutKPapke+'\chastotnost.bmp', передаваться в качестве первого параметра. Получается, что разбор переданных параметров и присваивание их, как нужно (в коде у ТС параметры передаются даже не в том порядке, как в документации), делает компилятор Delphi? Или это как-то иначе происходит? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.09.2021, 14:29
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
s62, 1. Вначале вызывается GetIdsOfNames и получается DispID для самого метода и каждого каждого параметра 2. Потом заполняется структура DISPPARAMS Код: plaintext 1. 2. 3. 4. 5. 6.
где передается набор значений в виде массива вариантов и массив DispID аргументов 3. Вызываем Invoke и передаем ему указатель на нашу структуру 4. Вызываемый код разгребает полученную структуру и определят, что с ней делать ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.09.2021, 14:30
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
s62 делает компилятор Delphi? p.s. Не видел предыдущий ответ, когда писал. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.09.2021, 14:36
|
|||
---|---|---|---|
Как сделать обтекание картинки в ворде? |
|||
#18+
_Vasilisk_, Наверное, когда вызывается GetIdsOfNames для параметров, как раз и происходит разбор параметров вида "Name:=Value". ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.09.2021, 14:39
|
|||
---|---|---|---|
|
|||
Как сделать обтекание картинки в ворде? |
|||
#18+
s62 Наверное, когда вызывается GetIdsOfNames для параметров, как раз и происходит разбор параметров вида "Name=Value". ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=58&tablet=1&tid=2037056]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
49ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
others: | 263ms |
total: | 415ms |
0 / 0 |