powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
11 сообщений из 11, страница 1 из 1
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37902433
DrunkWolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите разобраться.
Задача вставить форматированный текст из одного файла в закладку, находящуюся в другом файле, через OOo Writer.


Код: vbnet
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.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
'
'Creates a sequence of com.sun.star.beans.PropertyValue s
'
 Function MakePropertyValue(cName, uValue)' As Object
Dim oStruct, oServiceManager 'as Object
    Set oServiceManager = CreateObject("com.sun.star.ServiceManager")
    Set oStruct = oServiceManager.Bridge_GetStruct("com.sun.star.beans.PropertyValue")
    oStruct.Name = cName
    oStruct.Value = uValue
    Set MakePropertyValue = oStruct
End Function 

'Converts a Ms Windows local pathname in URL (RFC 1738)
'Todo : UNC pathnames, more character conversions
'
 Function ConvertToUrl(strFile) 'As String
    strFile = Replace(strFile, "\", "/")
    strFile = Replace(strFile, ":", "|")
    strFile = Replace(strFile, " ", "%20")
    strFile = "file:///" + strFile
    ConvertToUrl = strFile
End Function
'A simple shortcut to create a service
'
Public Function CreateUnoService(strServiceName)' As Object
Dim oServiceManager 'As Object
    Set oServiceManager = CreateObject("com.sun.star.ServiceManager")
    Set CreateUnoService = oServiceManager.createInstance(strServiceName)
End Function

Function openDoc(sFile)
Rem
Rem Load an existing writer document, with opening parameters 
Rem
  Dim oSM, ODesk 'as Object 'root object from OOo API
  Dim oDoc 'as Object       'The document to be opened
  Dim OpenPar(1) 'As Object 'a Visual Basic array, with 3 elements
'sFile ="C:\oo\11.doc"
sFileURL = ConvertToUrl(sFile)
'Instanciate OOo : the first line is always required from Visual Basic for OOo
  Set oSM = CreateObject("com.sun.star.ServiceManager")
  Set oDesk = oSM.createInstance("com.sun.star.frame.Desktop")

'We call the MakePropertyValue function, defined just before, to access the structure
  Set OpenPar(0) = MakePropertyValue("ReadOnly", False)
 ' Set OpenPar(1) = MakePropertyValue("Password", "secret")
  Set OpenPar(1) = MakePropertyValue("Hidden", False)

'Now we can call the OOo loadComponentFromURL method, giving it as
'fourth argument the result of our precedent MakePropertyValue call    
  Set oDoc = oDesk.loadComponentFromURL(sFileURL, "_blank", 0, OpenPar)
  set openDoc = oDoc
 
     
End Function
''''''''''''''' 
 sFile ="C:\oo\11.doc"
 sFile2 ="C:\oo\22.doc"
 set oDoc = openDoc(sFile)  ' открываем файл в который вставить
 set oDoc2 = openDoc(sFile2) ' файл, содержащий текст вставки
Flag=True
 set TextPointer = oDoc.GetText
 set CursorPointer = TextPointer.CreateTextCursor
 set BookmarksSupplier=oDoc.getBookmarks
 set Bookmark=BookmarksSupplier.getByName("Zakl").getAnchor
   
 Text = "hhhhhhhh"
 'Bookmark.setString(Text)
 Bookmark.setString(oDoc2)



Модератор: Учимся использовать тэги оформления кода - FAQ


На последней строке (где собственно вставка и происходит) ругается: Cannot convert the value of vartype "9" to expected UNO type of type class: 12
...
Рейтинг: 0 / 0
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37909565
DrunkWolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Up!
...
Рейтинг: 0 / 0
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37909572
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опаньки, у опенофиса есть com-обертка.
...
Рейтинг: 0 / 0
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37909605
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AntonariyОпаньки, у опенофиса есть com-обертка.Есть даже эмулятор объектной модели Экселя поверх этой обертки )
...
Рейтинг: 0 / 0
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37910027
DrunkWolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И все же...Может быть кто подскажет, как мне вставить объект, содержащий форматированный текст в закладку?
...
Рейтинг: 0 / 0
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37910049
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а
Код: vbnet
1.
Bookmark.setString("123")


проходит?
...
Рейтинг: 0 / 0
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37910200
DrunkWolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,
Да, но так проходит просто строка без формата. А нужно именно с сохранением шрифта, цвета и тп...
Еще (TextPointer.insertString Bookmark, Text, false) проходит, но это тоже самое.
Есть еще метод insertTextContent, но не могу понять, как и в каких случаях он работает.
...
Рейтинг: 0 / 0
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37910249
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но ведь oDoc2 - это объект-файл, а не текст.
...
Рейтинг: 0 / 0
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37910251
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется, вопросы надо задавать на форуме ОО, ибо тут VB почти не причем - надо разобраться, какие типы данных подавать на вход метода.
...
Рейтинг: 0 / 0
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37910304
DrunkWolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там тоже был задан, пока молчат..
...
Рейтинг: 0 / 0
вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
    #37910331
DrunkWolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

Объект - текст перем. TextPointer, с ней тоже много чего пробовал.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / вставить контент из одного файла в закладку, находящуюся в другом файле, через OOo Writer.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]