powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Открытие Word в Java на форме для просмотра?
17 сообщений из 17, страница 1 из 1
Открытие Word в Java на форме для просмотра?
    #39144842
Dimmf28
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Суть идея такая, необходимо подгрузить word или pdf файл в форму java. Чтоб можно было на форме просмотреть все содержимое
этого файла, по сути тоже самое что и Foxitreader или Ms World?можно ли такое сделать?
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39144860
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы что-то не то называете "формой java". "Форма" это, обычно, "форма ввода" - множество полей для ввода данных.
Если речь о том чтобы смотреть документы через GUI, то, для начала, надо бы определится c GUI тулкитом. Так как в Java их больше одного. SWT очень нативный и там нет особых проблем подвязать виндовый ActiveX. В Swing тоже можно, но сложнее. На счет JavaFX никогда не интересовался.

Альтернативным решением будет pure Java рендерер для определенного формата. Но качество таких решений, обычно, оставляет желать лучшего.
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39144862
Dimmf28
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

вы правильно поняли мысль, можете подсказать с помощью чего или какой библиотеки это можно было б реализовать
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39144877
skywriter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если word-файл нужно только отображать, то, возможно, имеет смысл на лету перегнать его в PDF. Тогда нужен будет только PDF-рендерер.
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39144878
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimmf28вы правильно поняли мысль, можете подсказать с помощью чего или какой библиотеки это можно было б реализовать
Я вам два способа привел. Вы не удосужились уточнить какой именно вы предпочитаете.
Если второй, то для каждого формата своя библиотека.
Google -> Java PDF Viewer
Google -> Java MS Word Viewer
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39144890
Dimmf28
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

мне необходимо открывать pdf для его просмотра на GUI
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39144901
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimmf28мне необходимо открывать pdf для его просмотра на GUI
Ну, так берите первый в списке
http://www.icesoft.org/java/projects/ICEpdf/overview.jsf
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39144940
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimmf28Суть идея такая, необходимо подгрузить word или pdf файл в форму java. Чтоб можно было на форме просмотреть все содержимое
этого файла, по сути тоже самое что и Foxitreader или Ms World?можно ли такое сделать?

Хороший вопрос! я тоже задумывался как это всё можно сделать в Java.

в MS Access всё это достаточно круто работает. Word вставка, Excel вставка.
Excel вставка так вообще автомасштабирует своё содержание.

Но мы конечно не в Аксессе, мы в джава. Интересная тема со вставками. Тоесть это OLE (COM) в Java ?
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39145120
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimmf28Суть идея такая, необходимо подгрузить word или pdf файл в форму java. Чтоб можно было на форме просмотреть все содержимое этого файла, по сути тоже самое что и Foxitreader или Ms World?можно ли такое сделать?
Да ещё наверное в Linux'е?
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39145158
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimmf28Blazkowicz,

мне необходимо открывать pdf для его просмотра на GUI

Откройте обычным acrobatом
Для всех ОС.
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
                try {
                
                      File pdfFile = new File(filename);
                      if (pdfFile.exists()) {
           //     Desktop.getDesktop().print(file);
                              if (Desktop.isDesktopSupported()) {
                                    Desktop.getDesktop().open(pdfFile);
                                  
                              } else {
                                      System.out.println("Awt Desktop is not supported!");
                              }
                
                      } else {
                              System.out.println("File is not exists!");
                      }
                
                      System.out.println("Done");
                
                } catch (Exception ex) {
                      ex.printStackTrace();
                }



Если встроенный ICEPDF...То решение действительно интересное...но он искажает pdf ...не критично...
Но если посмотреть родным adobe и icepdf разница очевидна.
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39147904
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nebo. Тоесть это OLE (COM) в Java ?
уже звучит как кощунство...
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39148028
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Neboв MS Access всё это достаточно круто работает. Word вставка, Excel вставка.
КРУТО ? Вы серьезно ?

А с задачей ИЗВЛЕЧЬ обратно эти документы не сталкивались? Когда в MS Access БД вставлено куча разных документов в виде OLE Stream'ом из непонятно каких приложений и каких версий: Word, Excel, PDF, PhotoShop, Paint и т.д. Стоит задача перенести информацию в другую БД и все... приплыли... Каждое приложение имеет свой уникальный формат сереализации, свой уникальный интерфейс... если имеет.

IMHO M$ помойку изобрело. Но красивую помойку. Сразу всех "приколов" и не поймешь. Интерфейс встраивания объектов в БД, который умеет только "встраивать", но совершенно не умеет "извлекать" - убить того, кто такое придумал.

IMHO & AFAIK
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39148233
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,

)) понятно) я не говорю за всё) для определённых задач круто. Например Excel вставка масштабирует своё содержание,
чтобы показать его полностью в поле на экране. Плюс тоже самое при печати отчета.
Попробуйте сделать это же в джава и покажите))

Понятно что нет предела совершенству) Махать шашкой не стоит)
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39148250
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,

авторА с задачей ИЗВЛЕЧЬ обратно эти документы не сталкивались? Когда в MS Access БД вставлено куча разных документов в виде OLE Stream'ом из непонятно каких приложений и каких версий: Word, Excel, PDF, PhotoShop, Paint и т.д. Стоит задача перенести информацию в другую БД и все... приплыли... Каждое приложение имеет свой уникальный формат сереализации, свой уникальный интерфейс... если имеет.

Сталкивался) Тоже помучился. Примерно так это делалось (читаем в поток с рекордсета, из потока пишем на диск, как определённый файл). Да, надо знать, что хранится в поле:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
    'Set up the stream object specifying type (text or binary).
    'Initialize the stream object used to persist to a file
    Set st = New ADODB.Stream
    st.Type = adTypeBinary 'adTypeText
    st.Open
    
    ' Load the file to be stored, and update the recordset with the contents of the stream.
    'Write the value of the field to the stream
    st.WriteText rs.Fields("doc_DocumentFile").Value
    
    'Save the content of the stream to a file
    st.SaveToFile ("d:\temp\" & Me.ID & ".xls")
    
    'Close the stream
    st.Close
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39148261
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nebo, ты это серьезно?

В OLE поле, хранится НЕ исходный документ, а OLE IStream содержащий документ. Т.ч. записав его на диск - корректный документ нифига не получишь. В общем случае. Про MS Word и MS Excel точно уверять не буду. Но в общем случае, например PDF от Adobe Acrobat, картинок - 100%.
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39148275
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да простят меня джависты)), что приходится здесь это писать, но раз попросили)

>В OLE поле, хранится НЕ исходный документ, а OLE IStream содержащий документ.

Да. Вот этой командой пишем OLE IStream в поток:

Код: vbnet
1.
st.WriteText rs.Fields("objectFile").Value



Следующей командой пишем из потока на диск. Внимание: Формат файла сами указываем.
Что хранится в базе мы действительно не знаем.

Код: vbnet
1.
st.SaveToFile ("d:\temp\temp.xls")




>Т.ч. записав его на диск - корректный документ нифига не получишь.

Для Word или Excel работало.

за Acrobat и картинки не скажу. Тут нужно погуглить)
...
Рейтинг: 0 / 0
Открытие Word в Java на форме для просмотра?
    #39148292
Сергей Арсеньев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NeboДля Word или Excel работало.
Так у них формат файла и есть OLE-контейнер. :)

Ту магию которую Вы видете (с автомасштабированием и пр.) выполняют именно Word и Excel.
Аксесс просто знает чьи данные лежат в контейнере и вызывает это приложение. Нет приложения обрабатывающего контейнер (или если оно обрабатывает его криво) нет магии.

Достучаться в принципе можно до чего угодно.

http://www.java2s.com/Code/Java/SWT-JFace-Eclipse/WordOLE.htm
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Открытие Word в Java на форме для просмотра?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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