Как Вы помещаете теги EXIF в JPG, имея сырые данные jpeg буфер в C++?

Есть по крайней мере полдюжины способов сделать это, но, возможно, самый простой и самый короткий - использовать отражение, чтобы захватить ActionBarDrawerToggle 's Drawable и перевернуть его направление.

пример обертывает эту функциональность в подклассе и должен работать независимо от настройки ActionBar / Activity (если исходный класс работал там в первую очередь).

public class FlippedDrawerToggle extends ActionBarDrawerToggle {
    public FlippedDrawerToggle(Activity activity, DrawerLayout drawerLayout,
        int openDrawerContentDescRes, int closeDrawerContentDescRes) {

        this(activity, drawerLayout, null,
            openDrawerContentDescRes, closeDrawerContentDescRes);
    }

    public FlippedDrawerToggle(Activity activity, DrawerLayout drawerLayout,
        Toolbar toolbar, int openDrawerContentDescRes, int closeDrawerContentDescRes) {

        super(activity, drawerLayout, toolbar,
             openDrawerContentDescRes, closeDrawerContentDescRes);

        try {
            Field sliderField = ActionBarDrawerToggle.class.getDeclaredField("mSlider");
            sliderField.setAccessible(true);
            DrawerArrowDrawable arrow = (DrawerArrowDrawable) sliderField.get(this);
            arrow.setDirection(DrawerArrowDrawable.ARROW_DIRECTION_RIGHT);
        }
        catch (NoSuchFieldException | IllegalAccessException e) {
            // Fail silently
        }
    }
}

Это изменит только направление изображения переключателя. Если вы действительно хотите, чтобы все ActionBar / Toolbar были перевернуты, вы должны соответственно изменить направление макета.

5
задан Hannes 18 September 2008 в 08:52
поделиться

4 ответа

Посмотрите на этот PDF, на странице 20 у Вас есть схема, показывающая Вам, должны были поместить или изменить Вашу exif информацию. Каково различие с файлом на диске?

Буфер JPEG Вашей камеры уже содержат раздел EXIF?

4
ответ дан 14 December 2019 в 09:05
поделиться

Какая разница? Почему был бы, делая его в файл на диске несколько отличаться от выполнения его в памяти?

Просто сделайте то, что это - Вы, делают после чтения файла из диска..

1
ответ дан 14 December 2019 в 09:05
поделиться

Насколько я знаю, что данные EXIF в JPEG являются непрерывным подразделением файла. Так

  1. подготовьте данные EXIF в памяти
  2. запишите часть файла JPEG до EXIF
  3. запишите подготовленный EXIF
  4. запишите отдых файла JPEG
1
ответ дан 14 December 2019 в 09:05
поделиться

Вы могли бы хотеть смотреть в библиотеку Exiv2. Я знаю, что это может работать над файлами, но я предполагаю, что это также имеет функции для работы над буферами памяти.

1
ответ дан 14 December 2019 в 09:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: