FAQ - Вопросы - ответы - советы - Базы данных
Вопрос:
[VCL] Подскажите как правильно показать на экране и сохранить в базе картинку формата JPEG?
Ответ:
Я делал так (это кусок компонента):
IF PICTURE.GRAPHIC IS TJPEGIMAGE THEN
BEGIN
BS:=TBLOBSTREAM.CREATE(TBLOBFIELD(FIELD),BMWRITE);
PICTURE.GRAPHIC.SAVETOSTREAM(BS);
BS.FREE;
END
ELSE IF PICTURE.GRAPHIC IS TBITMAP THEN
BEGIN
JPG:=TJPEGIMAGE.CREATE;
JPG.COMPRESSIONQUALITY:=...;
JPG.PIXELFORMAT:=...;
JPG.ASSIGN(PICTURE.GRAPHIC);
JPG.JPEGNEEDED;
BS:=TBLOBSTREAM.CREATE(TBLOBFIELD(FIELD),BMWRITE);
JPG.SAVETOSTREAM(BS);
BS.FREE;
JPG.FREE;
END ELSE FIELD.CLEAR;
