Jump to content
View in the app

A better way to browse. Learn more.

FGX Native

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Добрый день. В проекте CameraPhotoDemo на Mi9 (Android 10) фото сделанные на основную камеру получаются повёрнутые на -90 градусов, а на фронтальную +90 градусов.

Make: Xiaomi
Model: MI 9
Resolution: 2009x1080
Density: 440dpi (unknown)
Release: 10
API: 29

  • Administrators

Проверил:

  1. Фотографии снятые на заднюю камеру поворачиваются корректно.
  2. Фотографии снятые на фронтальную камеру неправильно поворачиваются.

Исправлением займусь, когда буду доделывать сканер баркодов, заодно исправлю все текущие ошибки с камерой.

  • Author

В моем случает обе камеры не правильно поворачивают. Проверю еще раз после выхода исправления. Спасибо.

  • 1 month later...
  • Author

Проверил на релизе 1.1.3.0, проблема не ушла. На обе камеры фото поворачиваются не корректно. 

Screenshot_2020-03-24-12-28-50-171_ru.fgx.cameraphotodemo.jpg

Screenshot_2020-03-24-12-29-26-195_ru.fgx.cameraphotodemo.jpg

  • Administrators

Данная проблема не была решена в релизе 1.1.3.0

Такое поведение характерно лишь для малой части аппаратов.

Вам, к сожалению, не повезло.

Мы работаем над этим. Ожидайте следующих релизов.

Здравствуйте

Решается, в большинстве случаев следующим методом

uses AndroidApi.Jni,Java.Bridge,Java.Bridge.Helpers,FGX.Canvas.Android,Android.Api.Javatypes,Android.Api.ActivityAndView, Android.Api.Exif;
function RotateBitmap(B:TfgBitmap;Sz:Integer):TfgBitmap;
var M:TJMatrix;
    BA,BA1:TJBitmap;
begin
BA:=TfgAndroidBitmapHandle(B.Handle).NativeBitmap;
M:=TJMatrix.Create;
m.postRotate(Sz);
BA1:=TJBitmap.createBitmap(BA,0,0,BA.getWidth,BA.getHeight,m,true);
Result:=TfgBitmap.CreateFromNativeBitmap(BA1);
end;
function PrepareBitmapFromFile(FileName:String):TfgBitmap;
var E:TJExifInterface;
    Orientation:Integer;
begin
  E:=TJExifInterface.Create(FileName);
  Orientation:=E.getAttributeInt(TJExifInterface.TAG_ORIENTATION,TJExifInterface.ORIENTATION_UNDEFINED);
  Result:=TfgBitmap.CreateFromFile(FileName);
  if Orientation=TJExifInterface.ORIENTATION_ROTATE_180
  then
   Result:=RotateBitmap(Result,180)
  else
  if Orientation=TJExifInterface.ORIENTATION_ROTATE_90
  then
   Result:=RotateBitmap(Result,90)
  else
  if Orientation=TJExifInterface.ORIENTATION_ROTATE_270
  then
   Result:=RotateBitmap(Result,270);


end;

Извините за небрежность кода

Android.Api.Exif.pas

Edited by Stas

Recently Browsing 0

  • No registered users viewing this page.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.