Writer - Draw

Автор Ципихович Эндрю, 27 февраля 2024, 16:10

0 Пользователи и 1 гость просматривают эту тему.

Ципихович Эндрю

Цитата: bigor от 28 февраля 2024, 09:13он ругается в другой строке, но на FullPath
да понял я что нужно регистр сменить у переменной, сменил
Sub H1

Dim Param(0) as new com.sun.star.beans.PropertyValue
Dim Doc As Object
Dim FullPath As String: FullPath = "I:\Эндрю Питоньяк1.pdf"

dfg = Dir(FullPath)
FullPath = iFolder & dfg
Param(0).Name = "FilterName"

Select Case right(FullPath,3)
case "xls"
Param(0).Value = "MS Excel 97"
Case "txt"
Param(0).Value = "Text"
Case "pdf"
Param(0).Value = "Draw_pdf_Import"
end select
oDoc =  StarDesktop.loadComponentFromUrl(ConverttoURL(FullPath),"_blank",0,param())


End Sub
всё равно ошибка на последней строке
Ошибка времени выполнения Basic.
Вызвано исключение
Type: com.sun.star.lang.IllegalArgumentException
Message: Unsupported URL <file:///%D0%AD%D0%BD%D0%B4%D1%80%D1%8E%20%D0%9F%D0%B8%D1%82%D0%BE%D0%BD%D1%8C%D1%8F%D0%BA1.pdf>: "type detection failed".

bigor

#16
Причем здесь регистр, вы переменную присваиваете 2 раза, причем, интересно, что вы хотите в нее запихнуть второй раз?
Sub H1

Dim Param(0) as new com.sun.star.beans.PropertyValue
Dim Doc As Object
Dim FullPath As String: FullPath = "I:\Эндрю Питоньяк1.pdf"

Param(0).Name = "FilterName"
Param(0).Value = "draw_pdf_import"

oDoc =  StarDesktop.loadComponentFromUrl(ConverttoURL(FullPath),"_blank",0,param())


End Sub

ps переписал имя фильтра строчными буквами
Поддержать наш форум можно здесь

sokol92

Цитата: bigor от 28 февраля 2024, 15:07Param(0).Value = "Draw_pdf_Import"
@Bigor, здравствуйте!
Мне кажется, имена фильтров надо указывать с учетом регистра букв: "draw_pdf_import".
В данном конкретном случае, документ, вероятно, откроется фильтром "draw_pdf_import", так как этот фильтр будет выбран на основе содержимого документа.
Кстати, есть еще фильтры для открытия .pdf: "impress_pdf_import", "writer_pdf_import".
Владимир.

Ципихович Эндрю

Цитата: sokol92 от 28 февраля 2024, 15:41Кстати, есть еще фильтры для открытия .pdf: "impress_pdf_import", "writer_pdf_import"
пометил, спасибо, опробую с ними
а далее как программно нажать кнопку Печать в открытом документе? спасибо

Ципихович Эндрю

Цитата: Ципихович Эндрю от 28 февраля 2024, 15:45опробую с ними
опробовал:
Sub H1

Dim FullPath As String
FullPath = "I:\Эндрю Питоньяк1.pdf"
Dim oFS As Object
' Создаём объект для доступа к файловой системе
oFS = CreateUnoService("com.sun.star.ucb.SimpleFileAccess")
' Проверяем существование каталога
If Not oFS.exists(FullPath) Then
Print "Файл " & FullPath & " не существует, программа далее не будет продолжаться."
Exit Sub
End If
Dim Param(0) as new com.sun.star.beans.PropertyValue
Dim Doc As Object
Param(0).Name = "FilterName"
Param(0).Value = "Draw_pdf_Import" 'указываются в правой панели "Страница" и ниже такая же "Страница"
'Param(0).Value = "impress_pdf_import" 'указываются в правой панели "Слайд" и "Макеты"
'Param(0).Value = "writer_pdf_import" 'правая панель отсутствует, можно файл редактировать

oDoc =  StarDesktop.loadComponentFromUrl(ConverttoURL(FullPath),"_blank",0,param())


End Sub
какой предпочтительней пока не понял, тот, в котором можно программно нажать кнопку Печать при открытии документа

sokol92

#20
Цитата: Ципихович Эндрю от 28 февраля 2024, 15:57Param(0).Value = "Draw_pdf_Import"

Документы LO имеют метод print для печати. Поищите примеры его применения.

Особенности печати документов Draw описаны здесь.
Владимир.

Ципихович Эндрю

скажите а как узнать программно какое приложение, открывает по умолчанию файлы pdf? спасибо

bigor

Цитата: Ципихович Эндрю от 29 февраля 2024, 10:05открывает по умолчанию файлы pdf?
а какая связь с предыдущими сообщениями? Скорее всего нужно реестр читать, если винда
Поддержать наш форум можно здесь

Ципихович Эндрю

Цитата: bigor от 29 февраля 2024, 10:45а какая связь с предыдущими сообщениями?
pdf - на первой странице топика 17 раз упоминается, ещё есть упоминание "пдф" - то же самое........
на второй странице более 20 раз упоминается, но я намёк понял

bigor

Я не про пдф, тема writer - draw, вопрос был как из врайтера запустить draw c пдф и распечатать его. Вчера запустили, дали ссылок на печать. А сегодня вопрос про некое приложение, которое открывает пдф по умолчанию. Вот и пытаюсь найти связь между первоначальными вводными и очередным скачком выших мыслей 
Поддержать наш форум можно здесь

Ципихович Эндрю

если я не прав - спорить не буду, извините пожалуйста Мастер bigor