Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
-6 / 3 / 0
Регистрация: 21.09.2012
Сообщений: 80

Преобразовать .raw в .png или .jpg

29.11.2012, 22:46. Показов 1220. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте) у меня програма тянит скриншот екрана с буфера... и записевает в ss.raw... как мне преобразовать етот файл в .png или .jpg

Вот код:
Java
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
public class TakeScreenshot extends Activity {
 
     public static final String TAG = "ScreenShotter";
     
        private Button _SSButton;
        private PullScreenAsyncTask _Puller;
        Process p; 
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.take_screenshot);
           
            _SSButton = (Button)findViewById(R.id.main_screenshotButton);
            _SSButton.setOnClickListener(new View.OnClickListener() {
     
                public void onClick(View v) {
                    if (_Puller != null)
                        return;
                    //TODO: Verify that external storage is available! Could always use internal instead...
     
                    _Puller = new PullScreenAsyncTask();
                    _Puller.execute((Void[])null);
                }
            });
        }
     
        private void runSuShellCommand(String cmd) {
            Runtime runtime = Runtime.getRuntime();
            Process proc = null;
            OutputStreamWriter osw = null;
            StringBuilder sbstdOut = new StringBuilder();
            StringBuilder sbstdErr = new StringBuilder();
     
            try { // Run Script
                proc = runtime.exec("su");
                osw = new OutputStreamWriter(proc.getOutputStream());
                osw.write(cmd);
                osw.flush();
                osw.close();
            } catch (IOException ex) {
                ex.printStackTrace();
            } finally {
                if (osw != null) {
                    try {
                        osw.close();
                    } catch (IOException e) {
                        e.printStackTrace();                    
                    }
                }
            }
     
            try {
                if (proc != null)
                    proc.waitFor();
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
     
            sbstdOut.append(readBufferedReader(new InputStreamReader(proc.getInputStream())));
            sbstdErr.append(readBufferedReader(new InputStreamReader(proc.getErrorStream())));
        }
     
        private String readBufferedReader(InputStreamReader input) {
     
            BufferedReader reader = new BufferedReader(input);
            StringBuilder found = new StringBuilder();
            String currLine = null;
            String sep = System.getProperty("line.separator");
            try {
                // Read it all in, line by line.
                while ((currLine = reader.readLine()) != null) {
                    found.append(currLine);
                    found.append(sep);
                }
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                try {
                    reader.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
     
            return null;
        }
     
        class PullScreenAsyncTask extends AsyncTask<Void, Void, Void> {
     
            @Override
            protected Void doInBackground(Void... params) {
     
                File ssDir = new File(Environment.getExternalStorageDirectory(), "/screenshots");
                if (ssDir.exists() == false) {
                    Log.i(TAG, "Screenshot directory doesn't already exist, creating...");
                    if (ssDir.mkdirs() == false) {
                        //TODO: We're kinda screwed... what can be done?
                        Log.w(TAG, "Failed to create directory structure necessary to work with screenshots!");
                        return null;
                    }
                }
                File ss = new File(ssDir, "ss.raw");            
                if (ss.exists() == true) {
                    ss.delete();
                    Log.i(TAG, "Deleted old Screenshot file.");
                }
                String cmd = "/system/bin/cat /dev/graphics/fb0 > "+ ss.getAbsolutePath();
                runSuShellCommand(cmd);
                return null;
            }
     
            @Override
            protected void onPostExecute(Void result) {
                super.onPostExecute(result);
                _Puller = null;
            }
        }
}
код нашол здесь и если чесно то плохо его понимаю!!!((((((

Зарание спасибо!!!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.11.2012, 22:46
Ответы с готовыми решениями:

Преобразовать JPG или PNG в BMP
Есть код: if(clk == &quot;jpg&quot; || clk == &quot;JPG&quot; || clk == &quot;JPEG&quot; || clk == &quot;jpeg&quot;) { try { jpg-&gt;LoadFromStream(s); ...

Как преобразовать рисунок из "png" в "bmp" или в "jpg"?
Есть программка, которая ставит обои рабочего стола на выбор пользователя, она может поставить только &quot;jpg&quot; и &quot;bmp&quot;,...

jpg или png Картинка в диалоговом окне
как отобразить картинку png или jpg формата в диалоговом окне. Смотрел https://www.cyberforum.ru/visual-cpp/thread22717.html, но там только...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.11.2012, 22:46
Помогаю со студенческими работами здесь

Програмное изменение jpg или png изображения, без изменения его отображения
Добрый вечер. Поступила следующая задача. Рандомизовать jpg или png изображения, без изменения его отображения. Нужно это чтобы обойти...

Какое расширение выбрать JPG/GIF/PNG-8/PNG-24
Применение их

Приложение, позволяющее просматривать любые изображения в формате gif, jpg или png из указанного каталога
Добрый Вечер, Я начинающий в GUI, и вообще не знаю с чего начать. Пытался что либо найти похожего в интернете что бы по примерам,...

C определенной картинки (jpg или png) вывести координаты тех пикселей, которые заданного RGB цвета
С Новым годом, товарищи! Помогите пожалуйста: Мне нужно с определенной картинки (jpg или png) вывести координаты тех пикселей, которые...

Надо загрузить только фотографии на сервер формата JPG, GIF или PNG размером меньше 3 метров.
Поставь модуль Image::Magick; вот с его помощью можно делать с графическими файлами всё что угодно. в том числе проверку на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru