Копирование Richtext

Тема в разделе "Lotus - Программирование", создана пользователем Dragon108, 12 май 2011.

  1. Dragon108

    Dragon108 Well-Known Member

    Регистрация:
    19 янв 2010
    Сообщения:
    264
    Симпатии:
    0
    Есть документ - в нем Рич-текст поле, в котором хранится текст, который нужно передать в рич-текст поле в другом документе. При копировании, в скопированном рич-текст поле постоянно вылезает шрифт Default Monospace 10, хотя в том поле, откуда копируется рич текст, стоит Times New Roman 12, собственно, как и в том поле, куда копируется - Times New Roman 12. Более того, при копировании программно применяю стиль к рич тексту, в котором также стоит Times New Roman 12. И тем не менее, результат один - Default Monospace 10.
    Пробовал CopyItemToDocument, CopyItem, AppendItem ... всегда одно и тоже

    P.S. Еще почему то при копировании выравнивает весь текст по правому краю поля... тоже вопрос
     
  2. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    что-то не вспомню такого, вроде переносилось рт нормально.
    экспортни оба дока в дхл, посмотри что в рт стилях.
    Или это вылазит уже позже, при редактировании скопированного рт?
     
  3. alb

    alb Well-Known Member

    Регистрация:
    13 июл 2005
    Сообщения:
    212
    Симпатии:
    0
    чтоб не создовать новую тему напишу здесь.

    есть поле ричтекс туда вложены документы иногда их количесвто примерно до 20-ти доходит.
    требуется программно создать документ в другой базе и потом туда скопировать в ричтекс поле содержимое из первого документа

    делаю так

    Set rtitemA = uidoc.Document.GetFirstItem( "Body" ) 'uidoc это открытый документ из первой базы откуда нужно взять исходный РТ поле
    Set rtitemB = New NotesRichTextItem(doc, "Body") ' doc документ из второй базы куда нужно скопировать содержимое РТ поле из первого
    Call rtitemB.AppendRTItem( rtitemA ) ' так копирую


    но иногда теряются часть документов. на второй документ не копируется иногда 1 иногда 5 документов.
    возможно дело в размере, при превышении определенного размера может такой метод копирования не работает?
    подскажите кто знает


    вроде нашел
    вот это кажется подойдет
     
  4. gpatron

    gpatron Active Member

    Регистрация:
    13 авг 2009
    Сообщения:
    26
    Симпатии:
    0
    При копировании RichText полей стили могут теряться в том случае если копируемый итем computed (других причин пока еще не нашел)
     
  5. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.083
    Симпатии:
    300
    кто мешает копировать весь док и удалять "лишние" поля?
     
  6. VladSh

    VladSh начинающий
    Lotus team

    Регистрация:
    11 дек 2009
    Сообщения:
    1.251
    Симпатии:
    2
    Если в том документе, куда копируется док, начальное RT-поле пустое (ничего не содержит), то его перед копированием нужно удалить, тогда РТ из другого дока гарантированно скопируется с его родными параметрами.
     
Загрузка...

Поделиться этой страницей