Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Отображение изображений в delphi с сервера / 20 сообщений из 20, страница 1 из 1
05.12.2017, 17:47:55
    #39564596
dead end
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
Доброго времени суток.
Необходимо выгрузить картинку с сервера в приложение Delphi. Поле с изображением типа varbinarymax.
Загружал через компонент Image с помощью AdoQuery.


qadd.SQL.Add('insert into Работник(Табельный_номер,Фамилия, Имя,Отчество,Фото )') ;
qadd.SQL.Add('values( :Tnom,:SecName,:Name,:SurName,:Foto)');
qadd.Parameters.ParamByName('Foto').LoadFromfile(OPD1.FileName,ftBlob);

Пробовал через DbImage - вылезает ошибка Bitmap image is not valid.
Каким способом можно извлечь изображение?Какой компонент использовать?Или запрос?
...
Рейтинг: 0 / 0
05.12.2017, 17:58:55
    #39564614
Кроик Семён
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
Попробуйте, может заведется: 12082448
...
Рейтинг: 0 / 0
05.12.2017, 18:00:26
    #39564617
Кроик Семён
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
P.S.
но может и не взлететь, если Delphi какая-нибудь из последних
...
Рейтинг: 0 / 0
05.12.2017, 18:01:57
    #39564622
чччД
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
dead end,

тебе сюда.

Но сначала - сюда.
...
Рейтинг: 0 / 0
05.12.2017, 18:07:19
    #39564627
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
dead endЗагружал через компонент Image с помощью AdoQuery.

Ну, поздравляю. При этом ты потерял информацию о его формате. Теперь у тебя два пути:
загрузить изображения снова, на этот раз сохраняя их имя (или по крайней мере расширение)
или применить компонент/код, анализирующий сигнатуру их заголовка при загрузке из TBlobStream.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
05.12.2017, 18:08:13
    #39564628
dead end
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
Кроик Семён,

файл dpk даже не открывается(
...
Рейтинг: 0 / 0
05.12.2017, 18:09:40
    #39564634
dead end
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
Dimitry Sibiryakovdead endЗагружал через компонент Image с помощью AdoQuery.


загрузить изображения снова, на этот раз сохраняя их имя (или по крайней мере расширение)


каким образом это осуществляется?
...
Рейтинг: 0 / 0
05.12.2017, 18:10:32
    #39564636
dead end
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
чччД,

там сказали спросить у "делфистов"))
...
Рейтинг: 0 / 0
05.12.2017, 18:14:05
    #39564639
чччД
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
dead endчччД,

там сказали спросить у "делфистов"))

Тогда - в армию. Там хорошо, паёк, порядок, уважение мужчин, внимание женщин.
...
Рейтинг: 0 / 0
05.12.2017, 18:19:28
    #39564644
чччД
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
Попробуй выгрузить картинку в файл и натравить на него какой-нибудь просмотрщик файлов. Так узнаешь формат файлов, если повезет.
Возможно, остальные картинки у тебя такого же формата.
...
Рейтинг: 0 / 0
05.12.2017, 18:19:48
    #39564645
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
dead endкаким образом это осуществляется?

Точно таким же, только в табличке на одно поле больше.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
05.12.2017, 18:24:03
    #39564648
Zelius
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
dead end,

проще всего конечно сохранять тип файла, но если его нет, то можно по очереди открывать разными компонентами и отлавливать ошибки, снача TJPEG, потом TBItmap, TPNG (не помню, есть там суффикс Image или нет)
...
Рейтинг: 0 / 0
05.12.2017, 18:29:43
    #39564656
Кроик Семён
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
dead endКроик Семён,

файл dpk даже не открывается(

какая версия Delphi?
...
Рейтинг: 0 / 0
05.12.2017, 18:32:34
    #39564659
Ghost Writer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
TWebBrowser откроет любой поддерживаемый системой формат и без расширения файла.
Потом "Сохранить изображение как..." и видим расширение.
...
Рейтинг: 0 / 0
05.12.2017, 18:34:52
    #39564663
dead end
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
Кроик Семён,

xe3
...
Рейтинг: 0 / 0
05.12.2017, 18:35:14
    #39564664
Ghost Writer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
по идее можно даже сразу стрим в него грузить без сохранения в файл
...
Рейтинг: 0 / 0
05.12.2017, 18:36:47
    #39564665
dead end
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
Zelius,
все изображения,которые загружались, формата Png, но я все равно не понимаю как использовать это(
...
Рейтинг: 0 / 0
05.12.2017, 18:38:33
    #39564668
dead end
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
Zelius,

эти компоненты дополнительно надо устанавливать? не могу найти
...
Рейтинг: 0 / 0
05.12.2017, 18:50:48
    #39564681
Zelius
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
dead end,

в uses пропиши Graphics, jpeg, PngImage, GIFImg,

во что откопал:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
function FindGraphicClass(const Buffer; const BufferSize: Int64;
out GraphicClass: TGraphicClass): Boolean;
var
  LongWords: array[Byte] of LongWord absolute Buffer;
  Words: array[Byte] of Word absolute Buffer;
begin
  GraphicClass := nil;
  Result := False;
  if BufferSize < MinGraphicSize then Exit;
  case Words[0] of
    $4D42: GraphicClass := TBitmap;
    $D8FF: GraphicClass := TJPEGImage;
    $4949: if Words[1] = $002A then GraphicClass := TWicImage; //i.e., TIFF
    $4D4D: if Words[1] = $2A00 then GraphicClass := TWicImage; //i.e., TIFF
  else
  if Int64(Buffer) = $A1A0A0D474E5089 then
    GraphicClass := TPNGImage
  else if LongWords[0] = $9AC6CDD7 then
    GraphicClass := TMetafile
  else if (LongWords[0] = 1) and (LongWords[10] = $464D4520) then
    GraphicClass := TMetafile
  else if StrLComp(PAnsiChar(@Buffer), 'GIF', 3) = 0 then
    GraphicClass := TGIFImage
  else if Words[1] = 1 then
    GraphicClass := TIcon;
  end;
  Result := (GraphicClass <> nil);
end;


правда не знаю, работает ли :)
...
Рейтинг: 0 / 0
05.12.2017, 18:54:42
    #39564685
Zelius
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отображение изображений в delphi с сервера
dead end,

ну и вот что имел ввиду

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
  function OpenGraphic( aData: TSTream; out aExt: String): TGraphic;
  const
    ImageClassses:   array[0..3] of TGraphicClass = ( TJPEGImage, TPngImage, TGIFImage, TBitmap);
    ImageExtensions: array[0..3] of String = ( '.jpg', '.png', '.gif', '.bmp');
  var
    i: Integer;
  begin
    Result := nil;
    for i := 0 to Length(ImageClassses)-1 do
    try
      Result := ImageClassses[i].Create;
      aData.Position := 0;
      Result.LoadFromStream(aData);
      aExt := ImageExtensions[i];
      break;
    except
      Result := nil;
    end;
  end;
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Отображение изображений в delphi с сервера / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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