Отобразить HTML-документ в окне

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
soft42
Бывалый
Сообщения: 78
Зарегистрирован: 09 Октябрь 2012, 12:54
Откуда: Кемерово

Отобразить HTML-документ в окне

Сообщение soft42 »

Всех с праздником :D
Потребовалось отобразить HTML-документ в окне программы.
Посмотрел форум, в основном все занимаются перегонкой отчетов в HTML.
А у меня HTML-документы уже есть. Надо их только показать. В примерах Clarion нашел только работу с HTML-help.
Но там, как я понял, выводится уже готовое окно для поиска, и работает со сжатым HTML (CHM).
Или надо искать сторонние шаблоны? Кто чем пользуется?

Clarion 6.3 ABC
С уважением, Soft42
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3131
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Отобразить HTML-документ в окне

Сообщение Дед Пахом »

Поищите здесь "Shell.Explorer", много ссылок найдётся. Если коротко, то как-то так:

Код: Выделить всё

  PROGRAM

  MAP
  END

Window                        WINDOW('Caption'),AT(,,559,386),GRAY,SYSTEM,FONT('Tahoma',8)
                                OLE,AT(9,11,535,365),USE(?oleImg),COMPATIBILITY(020H),CREATE('Shell.Explorer.2')
                                END
                              END

wmfFile                       STRING('Test.wmf')
  CODE
  OPEN(Window)
  ACCEPT
    CASE EVENT()
    OF EVENT:OpenWindow
      ?oleImg{'Navigate("'& 'file://'& LONGPATH(wmfFile) &'")'}
    END
  END
  
в Вашем случае вместо wmf подставляйте html файлы.
С уважением, ДП
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1376
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Отобразить HTML-документ в окне

Сообщение RaFaeL »

J-HTML
Аватара пользователя
soft42
Бывалый
Сообщения: 78
Зарегистрирован: 09 Октябрь 2012, 12:54
Откуда: Кемерово

Отобразить HTML-документ в окне

Сообщение soft42 »

Попробовал Shell.Explorer. Спасибо, работает.
Теперь надо разобраться с кодировками и сами HTML-файлом.
С уважением, Soft42
Аватара пользователя
soft42
Бывалый
Сообщения: 78
Зарегистрирован: 09 Октябрь 2012, 12:54
Откуда: Кемерово

Отобразить HTML-документ в окне

Сообщение soft42 »

RaFaeL писал(а): 10 Май 2020, 12:56J-HTML
А чем отличается J-HTML от Shell.Explorer?
С уважением, Soft42
Аватара пользователя
RaFaeL
✯ Ветеран ✯
Сообщения: 1376
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Благодарил (а): 7 раз
Поблагодарили: 1 раз
Контактная информация:

Отобразить HTML-документ в окне

Сообщение RaFaeL »

soft42 писал(а): 10 Май 2020, 14:50 А чем отличается J-HTML от Shell.Explorer?
Простотой использования, это удобная обертка
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Отобразить HTML-документ в окне

Сообщение kreator »

Только конторы уже нет. Причём давно. Если эта удобная обёртка с открытым кодом, то можно посмотреть.
We are hard at work… for you. :)
Аватара пользователя
soft42
Бывалый
Сообщения: 78
Зарегистрирован: 09 Октябрь 2012, 12:54
Откуда: Кемерово

Отобразить HTML-документ в окне

Сообщение soft42 »

Вопрос по Shell.Explorer. А можно HTML брать из переменной-строки, а не из файла?
С уважением, Soft42
Аватара пользователя
soft42
Бывалый
Сообщения: 78
Зарегистрирован: 09 Октябрь 2012, 12:54
Откуда: Кемерово

Отобразить HTML-документ в окне

Сообщение soft42 »

Кажется, я не в ту сторону копаю. Пришел к выводу, что тот HTML, который у меня есть, не позволяет полноценно отобразить документ :(
Точнее его форму.
С уважением, Soft42
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Отобразить HTML-документ в окне

Сообщение kreator »

soft42 писал(а): 11 Май 2020, 14:54 Кажется, я не в ту сторону копаю. Пришел к выводу, что тот HTML, который у меня есть, не позволяет полноценно отобразить документ :(
Точнее его форму.
Как понять?
We are hard at work… for you. :)
Аватара пользователя
soft42
Бывалый
Сообщения: 78
Зарегистрирован: 09 Октябрь 2012, 12:54
Откуда: Кемерово

Отобразить HTML-документ в окне

Сообщение soft42 »

kreator писал(а): 11 Май 2020, 15:16 Как понять?
HTML у меня формируется OCR-программой. Вот кусок.

Код: Выделить всё

  <div class='ocr_page' id='page_1' title='image ""; bbox 0 0 2472 3534; ppageno 0'>
   <div class='ocr_carea' id='block_1_1' title="bbox 385 256 2310 1770">

    <p class='ocr_par' id='par_1_2' lang='rus' title="bbox 555 1147 1000 1200">
     <span class='ocr_line' id='line_1_2' title="bbox 555 1147 1000 1200; baseline -0.007 -13; x_size 45; x_descenders 9; x_ascenders 11">
      <span class='ocrx_word' id='word_1_4' title='bbox 555 1147 673 1200; x_wconf 96'>Дата:</span>
      <span class='ocrx_word' id='word_1_5' title='bbox 784 1149 1000 1186; x_wconf 96'>24.04.2020</span>
     </span>
    </p>

    <p class='ocr_par' id='par_1_3' lang='rus' title="bbox 557 1234 1476 1290">
     <span class='ocr_line' id='line_1_3' title="bbox 557 1234 1476 1290; baseline -0.008 -14; x_size 47; x_descenders 10; x_ascenders 12">
      <span class='ocrx_word' id='word_1_6' title='bbox 557 1235 685 1290; x_wconf 96'>Кому:</span>
      <span class='ocrx_word' id='word_1_7' title='bbox 797 1238 1044 1283; x_wconf 93'>Начальнику</span>
      <span class='ocrx_word' id='word_1_8' title='bbox 1058 1235 1198 1281; x_wconf 86'>ОРП</span>
      <span class='ocrx_word' id='word_1_9' title='bbox 1213 1234 1476 1282; x_wconf 96'>«Краснодар»</span>
     </span>
    </p>

    <p class='ocr_par' id='par_1_4' lang='rus' title="bbox 558 1327 1231 1383">
     <span class='ocr_line' id='line_1_4' title="bbox 558 1327 1231 1383; baseline -0.007 -15; x_size 48; x_descenders 11; x_ascenders 11">
      <span class='ocrx_word' id='word_1_10' title='bbox 558 1327 630 1383; x_wconf 96'>От:</span>
      <span class='ocrx_word' id='word_1_11' title='bbox 799 1329 898 1366; x_wconf 39'>ТК</span>
      <span class='ocrx_word' id='word_1_12' title='bbox 912 1329 1130 1376; x_wconf 92'>Пронкина</span>
      <span class='ocrx_word' id='word_1_13' title='bbox 1143 1327 1231 1364; x_wconf 66'>Е.А.</span>
     </span>
    </p>
В примере есть общий размер листа, есть распознанные слова и координаты в пикселах, куда они должны быть поставлены.
Но в HTML нельзя при помощи тегов поставить слова по координатам :( Надо использовать что-то другое.
При попытке отобразить этот текст все строки начинаются с левого края окна и идут через фиксированный вертикальный шаг между строками. Не судьба :evil:
С уважением, Soft42
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4549
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Отобразить HTML-документ в окне

Сообщение finsoftrz »

Смотрите marging и padding в css.
C6/C11, ШВС, tps/btrieve.
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Отобразить HTML-документ в окне

Сообщение kreator »

Посмотрите, как формирует html-документ стандартный SV класс. Там тоже элементы расположены на своих местах. В разделе "<style type="text/css">" там вот такое:

Код: Выделить всё

.RectStyle1
{
  border-color: #000000;
  border-width: 1.0092mm;
  border-top-style: solid;
}
.RectStyle2
{
  background-color: # transparent;
}
.RectStyle3
{
  border-color: #000000;
  border-width: 1.0092mm;
  border-left-style: solid;
}
#Position1
{
  position: absolute;
  left: 19.469mm;
  top: 7.4596mm;
  width: 261.1494mm;
  height: 1.0092mm;
}
#Position2
{
  position: absolute;
  left: 153.0551mm;
  top: 40.9369mm;
  width: 56.7445mm;
  height: 4.4386mm;
}
#Position3
{
  position: absolute;
  left: 153.0551mm;
  top: 45.5024mm;
  width: 164.8207mm;
  height: 4.4386mm;
}
#Position4
{
  position: absolute;
  left: 153.0551mm;
  top: 50.0678mm;
  width: 29.7064mm;
  height: 4.4386mm;
}
А сами элементы вот так:

Код: Выделить всё

<SPAN class="RectStyle2" id="Position2"></SPAN>
<SPAN class="TextStyle1 LeftStyle" id="Position2">Выполнить взвешивание</SPAN>
<SPAN class="RectStyle2" id="Position3"></SPAN>
<SPAN class="TextStyle1 LeftStyle" id="Position3">Выполнено взвешивание ручных огнетушителей согласно АММ 26-25</SPAN>
<SPAN class="RectStyle2" id="Position4"></SPAN>
<SPAN class="TextStyle1 LeftStyle" id="Position4">-01-280-801</SPAN>
We are hard at work… for you. :)
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Отобразить HTML-документ в окне

Сообщение kreator »

У Вас примерно тоже самое, только потерян кусок "text/css".
We are hard at work… for you. :)
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4549
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 34 раза

Отобразить HTML-документ в окне

Сообщение finsoftrz »

Судя по тексту, слова отмечены идентами. Такое делают обычно, чтобы потом на это дело натравить джаваскрипт, который подсунет нужные позиции. Видимо, из title (всплывающей подсказки). То есть, к этому тексту нужен еще обработчик на джаваскрипт.
C6/C11, ШВС, tps/btrieve.
Ответить