Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: OLE объекты

Сообщения:  [1-10]   [11-16] 

 
 автор: tan4eg   (11.06.2009 в 12:31)   письмо автору
 
   для: Trianon   (06.06.2009 в 17:01)
 

Мое решение тут http://sly-and-fluffy.blogspot.com/2009/06/access-php.html

  Ответить  
 
 автор: tan4eg   (06.06.2009 в 21:44)   письмо автору
 
   для: Trianon   (06.06.2009 в 17:03)
 

вот так они подготавливают картинку в асп. по идее, то же самое должно работать в пхп, ничего магического они не делают.... но не работает :(
function SetImageForDisplay(field, contentType)
    OLEHEADERSIZE = 78
    
    contentType = LCase(contentType)
    Select Case contentType
    Case "gif", "jpeg", "bmp"
    contentType = "image/" & contentType
    bytes = field.value 
    Case "ole"
    contentType = "image/bmp" 
    nFieldSize = field.ActualSize
    oleHeader = field.GetChunk(OLEHEADERSIZE)
    bytes = field.GetChunk(nFieldSize - OLEHEADERSIZE)
    End Select
    Session("ImageBytes") = bytes
    Session("ImageType") = contentType
    End function

  Ответить  
 
 автор: Trianon   (06.06.2009 в 17:03)   письмо автору
 
   для: tan4eg   (06.06.2009 в 16:35)
 

после этих 78 байт идут 4 байта, которые очень напоминают длину оставшегося куска в шестнадцатеричных цифрах. А после них - BMP.

  Ответить  
 
 автор: Trianon   (06.06.2009 в 17:01)   письмо автору
 
   для: Саня   (05.05.2009 в 18:36)
 

Месяц назад меня изрядно смутило то обстоятельство, что помимо шестнадцатеричного кода в потоке встречаются мелкие двоичные вкрапления....

Очевидно, либо они что-то означают, а я не знаю, что именно.
Либо экспорт формата уже был проведен с нарушениями.
И то и другое, понятное дело, правильный ответ только перечеркнуть может.

  Ответить  
 
 автор: sim5   (06.06.2009 в 16:56)   письмо автору
 
   для: Trianon   (06.06.2009 в 16:55)
 

Красивая печка :) Не знаю, я же не создавал этого объекта, спросите у Сани :)

PS. Да, видел я там BMNS - а дальше смотреть поленился, пудумав, что это нечто свое из формата.)

  Ответить  
 
 автор: Trianon   (06.06.2009 в 16:55)   письмо автору
21.1 Кб
 
   для: sim5   (05.05.2009 в 19:17)
 

sim5, пардон, промахнулся....

Саня:
такой чтоли рисунок?
bmp-файл там начиная с символов BM и далее...

  Ответить  
 
 автор: tan4eg   (06.06.2009 в 16:35)   письмо автору
 
   для: Саня   (05.05.2009 в 18:36)
 

Мучаюсь с такой же проблемой, нужно срочно найти решение...
Нагуглено, что есть хеадер в оле длиной 78 байт. Но даже если отрезать эти 78 байт, то ничего не получается...
Был вариант отображать изображения как встроенный object с типом application/x-oleobject...
Если найдете решение, поделитесь, пожалуйста!

  Ответить  
 
 автор: sim5   (05.05.2009 в 19:17)   письмо автору
 
   для: Саня   (05.05.2009 в 18:36)
 

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

  Ответить  
 
 автор: Саня   (05.05.2009 в 18:36)   письмо автору
297.9 Кб
 
   для: Саня   (28.04.2009 в 20:25)
 

Кое что прояснилось. Мне тут подсказали:
<?
$str 
preg_replace_callback ("([a-zA-Z0-9]{2})"create_function ('$matches''return chr (hexdec ($matches[0]));'), $str);

Среди бинарных данных плавают "Точечный рисунок" и "Paint.Picture". Значит разгадка где-то близко.

Помимо всего прочего попробовал PEAR::OLE, но тоже не помогло.

  Ответить  
 
 автор: Саня   (02.05.2009 в 12:12)   письмо автору
 
   для: nikita2206   (01.05.2009 в 13:13)
 

Если бы они были записаны в базу в бинарном формате, то никаких проблем. Но в первом посте я написал что это OLE-объект.

  Ответить  

Сообщения:  [1-10]   [11-16] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования