Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / thumbnails картинок, кроссплатформенный / 16 сообщений из 16, страница 1 из 1
14.08.2020, 10:30
    #39989697
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
Т.к. проект на UniGUI, а UniGUI уже поддерживает Линукс, то может быть в будущем и само приложение тоже может быть скомпилировано для Линукса.

Поэтому хотелось бы узнать: есть ли в Delphi готовые функции и процедуры для масштабирования картинок (png, jpg)? Про webm уже молчу.
Может кто знает готовые библиотеки, опять же, очень желательно с поддержкой Линукса.
...
Рейтинг: 0 / 0
14.08.2020, 11:20
    #39989718
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
Кто-нибудь imagemagick использовал?
...
Рейтинг: 0 / 0
14.08.2020, 11:45
    #39989737
Соколинский Борис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
X11
Кто-нибудь imagemagick использовал?
Да, но давно.
...
Рейтинг: 0 / 0
14.08.2020, 11:48
    #39989742
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
может есть примеры?
imagemagick есть в Lazarus, а мне бы для Delphi Rio
...
Рейтинг: 0 / 0
14.08.2020, 12:03
    #39989759
Соколинский Борис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
X11
может есть примеры?
Почили в бозе.
Там все несложно было, примерно как тут: https://wiki.freepascal.org/PascalMagick
...
Рейтинг: 0 / 0
14.08.2020, 12:10
    #39989763
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
Пытаюсь пощупать unit AwResizeImage;
https://stackoverflow.com/questions/8111447/how-to-resize-a-picture
...
Рейтинг: 0 / 0
14.08.2020, 16:39
    #39989898
энди
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
вот мой говнокод резайза для тумбнейлов

Код: 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.
29.
30.
31.
32.
33.
34.
procedure WIC_Resize(ms: TMemoryStream; var NewHeight, NewWidth: Integer);
var
  WicImage : TWicImage;
  vScaler: IWICBitmapScaler;
  ImagingFactory: IWICImagingFactory;
begin
  WicImage := TWicImage.Create;
  ms.Position:= 0;
  WicImage.LoadFromStream(ms);

  if WicImage.Height>WicImage.Width then
  begin
     NewWidth:= Round(NewWidth*(WicImage.Width/WicImage.Height));
  end;

  if WicImage.Height<WicImage.Width then
  begin
     NewHeight:= Round(NewHeight*(WicImage.Height/WicImage.Width));
  end;

  ImagingFactory:= WicImage.ImagingFactory;
  ImagingFactory.CreateBitmapScaler(vScaler);
  vScaler.Initialize(WicImage.Handle, NewWidth, NewHeight, WICBitmapInterpolationModeFant);
  WicImage.Handle := IWICBitmap(vScaler);

  ms.Clear;
  WicImage.SaveToStream(ms);
  ms.Position:= 0;

  vScaler:= nil;
  ImagingFactory:= nil;

  WicImage.DisposeOf;
end;
...
Рейтинг: 0 / 0
14.08.2020, 16:44
    #39989900
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
энди,

TWICImage это же VCL а не кроссплатформ.
...
Рейтинг: 0 / 0
14.08.2020, 16:45
    #39989901
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
X11,

Пока только с помощью FMX, вроде как.
...
Рейтинг: 0 / 0
14.08.2020, 17:22
    #39989903
thumbnails картинок, кроссплатформенный
...
Рейтинг: 0 / 0
14.08.2020, 17:47
    #39989906
Vizit0r
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный


читаешь такое шикарное описание, как в репе по ссылке - и сразу становится понятно, что это, для чего, и что умеет.
...
Рейтинг: 0 / 0
14.08.2020, 18:00
    #39989908
AlexeyM123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
на всякий случай
была статья на хабре Как написать и поместить на сайт фотобанк
...
Рейтинг: 0 / 0
14.08.2020, 18:16
    #39989914
Fr0sT-Brutal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
Vizit0r
читаешь такое шикарное описание, как в репе по ссылке - и сразу становится понятно, что это, для чего, и что умеет.

Обычное дело для оберток
...
Рейтинг: 0 / 0
14.08.2020, 19:38
    #39989937
thumbnails картинок, кроссплатформенный
Vizit0r,

Это я как понимаю, как раз таки вырез из lazarus.

Ибо такой конченной системы inc больше нигде не используется.
...
Рейтинг: 0 / 0
17.08.2020, 09:41
    #39990264
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
а кто-нибудь использовал Vampyre Imaging?
...
Рейтинг: 0 / 0
18.08.2020, 08:49
    #39990453
X11
X11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
thumbnails картинок, кроссплатформенный
В общем, Vampyre Imaging установилась и работает, хотя при установке не хватало файла (\Extensions\ImagingExtras.pas), но я его нашел в сети.
Есть форум
https://galfar.vevb.net/imaging/smf/index.php
справка
http://galfar.vevb.net/imaging/doc/RefDoc/

вот вся процедура масштабирования
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
uses Imaging, ImagingTypes;


procedure ResizeImage(const ASource, ADest: String);
var
  Img: TImageData;
  AspectRatio: Single;
begin
  Imaging.InitImage(Img);
  try
    Imaging.LoadImageFromFile(ASource, Img);
    AspectRatio := Img.Width / Img.Height;
    Imaging.ResizeImage(Img, 100, Round(100 / aspectratio), rfNearest);
    Imaging.SaveImageToFile(ADest, Img);
  finally
    Imaging.FreeImage(img);
  end;
end;
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / thumbnails картинок, кроссплатформенный / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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