| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Firebird, Interbase > посоветуйте как хранить графику в InterBase 6.5 |
| Автор: Helpmeplz 22.5.2006, 16:30 |
| Имеет InterBase 6.5 Что нужно: необходимо хранить картинки формата jpg Описание картинок: размер около от 2 до 4mb разрешение 3264х2448 качество необходимо так как на картинках есть объекты на которых имеются надписи и видны они только после нескольких увеличений. как я знаю InterBase 6.5 хранит в bitmap формате. то есть получается что необходимо конвертировать в bmp-формат. размер получается большой. например размер 3.09 mb после сохранения в bmp получается 22.8 mb. помогите советом что делать. |
| Автор: Alex 22.5.2006, 16:52 |
Кто вам сказал такой бред? Для хранения используйте поля типа Blob |
| Автор: Helpmeplz 22.5.2006, 17:41 | ||
Добавлено @ 17:43
Я не так выразился наверное. вот цитата: Таблицы InterBase не имеют простого типа BLOB-поля. Есть три варианта, или подтипа: тип 0, тип 1 и подтип, определенный пользователем. Типы 0 и 1 - "встроенные" типы. Тип 0 - BLOB-поля (тип по умолчанию) для хранения общих бинарных данных. Тип 1 - BLOB-поля для хранения текстовых BLOB-данных. Ни один из предопределенных типов не допускает автоматического извлечения данных изображения из BLOB-поля для его последующего отображения в компоненте TDBImage. BLOB-поля типа 0 могут использоваться для хранения данных bitmap-формата, но данные должны извлекаться и передаваться в объект типа TBitmap программным путем скажите как сохранить jpeg в blob поле. ведь его надо будет конвертировать в bmp? или нет? если нет то напишите какие функции использовать? вот например не так? procedure TForm1.Button1Click(Sender: TObject); var C: TClipboard; begin C := TClipboard.Create; try if Clipboard.HasFormat(CF_BITMAP) then DBImage1.PasteFromClipboard else ShowMessage('Буфер обмена не содержит изображения!'); finally C.Free; end; end; или вот еще мне знаком такой способ procedure TForm1.Button2Clicck(Sender: TObject); begin Table1Bitmap.LoadFromFile( 'c:\images\image.bmp'); end; |
| Автор: vv3 22.5.2006, 23:17 |
| Вместо Bitmap в случае JPEG надо использовать Picture. И модуль jpeg подключать, а хранить в блобе можно все, что угодно, любые бинарные данные.... |
| Автор: Alex 22.5.2006, 23:27 |
| http://forum.ibase.ru/phpBB2/viewtopic.php?p=10894&highlight=#10894 |