![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |
Форумчанин
Регистрация: 12.08.2009
Сообщений: 118
|
![]()
PDF converter. Пока пытаюсь конвертиворвать растровую графику и текст. Возможно, позже буду пробовать векторную графику и формы (кнопки, списки...).
По поводу Selection-a. У меня получается неприятный эффект: во время работы моего приложения, не могу нормально работать в Word, selection все время дергается. Как перед изменением selection-a запомнить его, а после восстановить? Можете привести коротенький пример? По поводу буфера, я не могу гарантировать, что во время между моим Copy и Paste буфер не будет изменен. а, вот с Цитата:
![]() |
|
![]() |
![]() |
![]() |
#12 |
Форумчанин
Регистрация: 17.07.2009
Сообщений: 519
|
![]()
1) IMHO, работать в Word одновременно с фоновым приложением, правящим активный документ - непродуктивная идея.
Cоздавайте скрытую копию Word и управляйте вашей программой работой этой копии. 2) О полях: Код:
Последний раз редактировалось Aent; 14.09.2009 в 04:04. |
![]() |
![]() |
![]() |
#13 |
Форумчанин
Регистрация: 12.08.2009
Сообщений: 118
|
![]()
Спасибо, Aent. У меня все получилось
![]() |
![]() |
![]() |
![]() |
#14 |
Форумчанин
Регистрация: 12.08.2009
Сообщений: 118
|
![]()
Не все получилось
![]() Все хорошо в 2003 Word-e. В 2007 Word-e не хорошо... Код:
В чем может быть проблема? Может быть, необходимо подкорректировать xml-ку? Или задать другое значение WdFieldType? - пробовал wdFieldShape - ничего хорошего. |
![]() |
![]() |
![]() |
#15 |
Форумчанин
Регистрация: 17.07.2009
Сообщений: 519
|
![]()
Я проверил свой, приведённый выше, VBA код в Word 2007 на выложенных ранее файлах test.doc и wa.xml. Проблем не обнаружил. wdFieldShape тут в любом случае не при чём. Возможно у вас разные размеры страницы в целевом документе и в .xml и 2007 понимает это отличным от 2003 образом.
Что и где затирается не понял. На предыдущих листах все картинки остались. Попробуйте при добавлении поля указать после пути к вставляемому фрагменту 4-й параметр PreserveFormatting:=TRUE и в хвост пути к XML фрагменту добавить " \* MERGEFORMAT" Обратите внимание на то, что этот слэш "\*" не должен быть удвоен и перед слэшем должен быть пробел. Последний раз редактировалось Aent; 18.09.2009 в 23:55. |
![]() |
![]() |
![]() |
#16 | |
Форумчанин
Регистрация: 12.08.2009
Сообщений: 118
|
![]()
Установил PreserveFormatting в true, добавил \* MERGEFORMAT, не получилось, результат прежний.
Правильно ли я задаю строку? Код:
Цитата:
Сейчас я поступаю следующим образом. Создаю документ, в цикле для каждой следующей страницы делаю 1. Задаю размеры страниц 2. Добавляю изображения 3. Добавляю WordArt-ы 4. Добавляю TextBox-ы 5. Добавляю нормальный текст Попробовал добавлять WordArt самым первым, затем устанавливать размер страницы, затем все остальное. Первая страница сформировалась нормально, во второй словил исключение Код:
в обработке исключения Код:
![]() Последний раз редактировалось Diego__; 21.09.2009 в 13:06. |
|
![]() |
![]() |
![]() |
#17 |
Форумчанин
Регистрация: 17.07.2009
Сообщений: 519
|
![]()
1) Я не могу воспроизвести ваш эффект. Ничего не затирается. Изображения не пропадают. Word 2007 SP1 rus.
Выложите целевой файл сохранённый перед .add для поля. Определите точку вставки поля букмарком. Выложите ваш doctemplate.xml. 2) В пути к вставляемому фрагменту слэши надо удваивать. И непонятно, квотируете ли вы двойные кавычки. 3) Что мешает устанавливать текст и параметры шрифта непосредственно в xml коде шейпа? Это можно сделать непосредственно, а можно с помощью XSL. Кстати, INCLUDETEXT понимает ссылку на XSL. 4) Общее впечатление, что вы неправильно формируете в цикле какой то параметр ...Проверьте в отладчике ![]() Последний раз редактировалось Aent; 21.09.2009 в 14:31. |
![]() |
![]() |
![]() |
#18 | |
Форумчанин
Регистрация: 12.08.2009
Сообщений: 118
|
![]()
В прикреплении в архиве 2 файла, один перед добавлением Field-a, второй полностью заполненной первой страницей (изображения куда то пропали). doctemplate.xml - это wa.xml.
Не совсем понимаю Цитата:
Код:
Вы писали: "Что мешает устанавливать текст и параметры шрифта непосредственно в xml коде шейпа?". У меня каждый шаблон может иметь различные параметры шрифта (цвет, размер, название шрифта, болд, италик). Пробую отлаживать, но пока верного решения не обнаружил |
|
![]() |
![]() |
![]() |
#19 | |
Форумчанин
Регистрация: 17.07.2009
Сообщений: 519
|
![]()
1) Bookmarks (Закладки) - коллекция именованных объектов Word, позволяющих ссылаться на места в документе. Cм. HELP по "закладки"
Я хотел что бы вы указали точку вставки поля на листе. 2) По синтаксису INCLUDETEXT для Winword в пути к вставляемому фрагменту слэши нужно удваивать. Правильная строка для C++: "\"d:\\\\DOCTemplate.xml\" \\*MERGEFORMAT" Т.е Word должен получить D:\\t.xml а не D:\t.xml 3) Цитата:
4) Обратите внимание в каком слое находится вставляемый объект/холст. 5) Во вложении ваш файл с добавленным макросом. Добавление идёт без проблем. Ничего не исчезает. Последний раз редактировалось Aent; 21.09.2009 в 19:45. |
|
![]() |
![]() |
![]() |
#20 |
Форумчанин
Регистрация: 17.07.2009
Сообщений: 519
|
![]()
Я тут подумал, что в общем то поле для вставки вам не нужно.
Ничто не мешает использовать непосредственно метод InsertFile, применяя его к рангам на каждой странице куда вам нужно вставить шейп. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как в lable задать степень (нижний и верхний регистр) | Polotenchik | Общие вопросы Delphi | 17 | 17.07.2009 23:30 |
как задавать клавиши в Меню | StudentPolitech | Помощь студентам | 1 | 10.12.2008 02:17 |
не просто текст, а как word или wordArt | andrey4623 | Общие вопросы Delphi | 2 | 29.12.2007 21:11 |
Как задавать параметры в EXE ???? ПОМОГИТЕ! | UnD)eaD)Snake | Общие вопросы Delphi | 2 | 22.07.2007 17:28 |
КАК поместить ИКОНКУ программы в правый нижний угол панели(там где пуск)??? | micaell | Общие вопросы Delphi | 5 | 21.02.2007 19:58 |