Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > JAVA Micro Edition

JAVA Micro Edition Низкоуровневое программирование мобильных телефонов.

Ответ
 
Опции темы
Старый 13.08.2008, 04:13   #16
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Хранение картинок в классах

b.java:38: code too large
 public static void R() throws Exception{
                    ^
1 error
Это что? Типа код слишком длинный? Что делать? Это я картинку 160x138 заюзал... А если не bmp и с прозрачностью надо, то твоя прога не сможет сделать?
- - -
Сделал картинку в четыре раза меньше, всё создало, откомпилировало, но мидлет не запускается. Эмулятор сразу при попытке запуска закрывается. Видимо, мы к решению этого вопроса неправильно подошли... Каким-то образом ведь делают так. Пойду декомпильну что-нибудь, может поможет =)

Последний раз редактировалось Phantom, 13.08.2008 в 04:23.
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 09:01   #17
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Хранение картинок в классах

У меня появилась другая идея =) Как можно считать картинку из файла и преобразовать в объект Image?
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 13:09   #18
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Хранение картинок в классах

Сообщение от Phantom_wc Посмотреть сообщение
У меня появилась другая идея =) Как можно считать картинку из файла и преобразовать в объект Image?
Я в своей библиотеке делал так:
import java.io.*;
import javax.microedition.lcdui.Image;
import javax.microedition.io.*;

class 
Lib_imloadjsr75 {
public static 
Image img;

public static 
Image loadimage(String filename) {
  try {
    
FileConnection con = (FileConnection)
        
Connector.open("file://" +
                       
filenameConnector.READ);
    
InputStream IS con.openInputStream();
    
img Image.createImage(IS);
    
IS.close();
    
con.close();
  }
  catch (
Exception ex) {}

  return 
img;


}

А вообще, зачем хранить изображения в классах?
Кстати, есть еще вариант: закодировать бинарник PNG чем-нибудь в роде base64 и записать как строковую константу. Места будет занимать мало, только декодировать обратно придется.
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 14:11   #19
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Хранение картинок в классах

Изображения хочу хранить в классе, чтобы достать их оттуда было непросто =) Ща думаю просто записать в один файл все картинки по очереди без префиксов, а после считать файл из класса, отделить все картинки одну от другой, приделать к каждой префикс, который убрал до записи в файл и создать объект Image.
Твой способ, вроде, не пройдёт... Я половину функций из твоего примера не знаю, но, как я понял, у тебя из потока как бы объект создаётся. К нему, наверно, не получится добавить префикс... Префикс - это, грубо говоря, набор байт или строка. Вот. Что посоветуешь?
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 14:44   #20
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Хранение картинок в классах

Тогда так:
FileConnection con = (FileConnection
        
Connector.open("file://" 
                       
filenameConnector.READ); 
    
InputStream IS con.openInputStream();
    
    
byte[] im=null;
    
IS.read(im);//читаем данные в массив байт
    //здесь делаем с массивом байт что угодно
    
img=Image.createImage(im,0,im.length);//создаем Image из массива im 
Вот. читаем данные в массив, а дальше изменяем его, как надо.
Потом создаем из него Image.

А если уж очень надо спрятать, тогда лучше шифровать чем-нибудь.
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 15:06   #21
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Хранение картинок в классах

Ну base64 открытый алгоритм, кто угодно на вид сразу догадается попробовать обратить. Да и от шифрования скорость упадёт. Спрятать нужно не особо. Защиты от дурака хватит =) Попробую с массивом байт.
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 15:24   #22
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Хранение картинок в классах

Сообщение от Phantom_wc Посмотреть сообщение
Спрятать нужно не особо. Защиты от дурака хватит =)
Ну так тогда PNG задом наперед перевернуть, так многие делают. Мне самому когда такое попалось, я не сразу додумался его HEX-редактором просмотреть. И только когда просмотрел - увидел, что файл задом наперед переписан.
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 15:24   #23
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Хранение картинок в классах

b.java:49: cannot find symbol
symbol : class FileConnection
location: class b
FileConnection con=(FileConnection)
^
b.java:49: cannot find symbol
symbol : class FileConnection
location: class b
FileConnection con=(FileConnection)
^
2 errors
- - -
Хы, тут тема где-то про картинки в файлах есть, моё сообщение последнее. Я подошёл к расшифровке картинок с полной ответственностью =)
О_о
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ViNT (14.08.2008)
Старый 13.08.2008, 15:33   #24
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Хранение картинок в классах

Этому коду нужен класс javax.microedition.io.file.FileConnection
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 15:42   #25
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Хранение картинок в классах

import javax.microedition.io.*; я написал. Не работает. Не может же быть, что... Что у меня его в компиляторе НЕТ О_о ???
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 17:41   #26
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Хранение картинок в классах

Скорее всего, нет пакета JSR75 API.
Хотя стоп. Имеется в виду чтение из внешнего файла или из ресурса?
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 18:53   #27
Piligrim
Оптимист
 
Регистрация: 07.01.2006
Сообщений: 961
Написано 105 полезных сообщений
(для 259 пользователей)
Ответ: Хранение картинок в классах

еще один из способов, замена заголовка %PNG на другие символы или просто удаление, тогда практически все просмотрщики пасуют.
(Offline)
 
Ответить с цитированием
Старый 13.08.2008, 19:12   #28
Romanzes
Разработчик
 
Аватар для Romanzes
 
Регистрация: 06.04.2008
Сообщений: 541
Написано 196 полезных сообщений
(для 637 пользователей)
Ответ: Хранение картинок в классах

Немного не по теме, кто знает, чем редактировать изображения в формате *.bsprite? Не помню, в какой игрушке я это видел, если вспомню, выложу линк.
(Offline)
 
Ответить с цитированием
Старый 14.08.2008, 01:14   #29
ViNT
Модератор
 
Регистрация: 03.04.2007
Сообщений: 2,252
Написано 597 полезных сообщений
(для 817 пользователей)
Ответ: Хранение картинок в классах

Сообщение от Romanzes Посмотреть сообщение
Немного не по теме, кто знает, чем редактировать изображения в формате *.bsprite? Не помню, в какой игрушке я это видел, если вспомню, выложу линк.
Похоже какой-то нестандартный формат.
Скорее всего, либо RAW-данные наподобие BMP, либо сжатые данные, наподобие ZIP. Увидеть бы сам файл.
(Offline)
 
Ответить с цитированием
Старый 14.08.2008, 09:11   #30
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Хранение картинок в классах

Хотя стоп. Имеется в виду чтение из внешнего файла или из ресурса?
Из ресурса, конечно =) Зачем мне зашифрованные картинки с диска читать? гг
еще один из способов, замена заголовка %PNG на другие символы или просто удаление, тогда практически все просмотрщики пасуют.
Я хочу убрать больше даже, там префикс у png длиннее, который одинаковый у всех png'шек. А ещё с конца можно несколько байт удалить (по ним тоже можно догадаться, что это png).
- - -
Зацените, какое я тут расследование провёл:
http://forum.boolean.name/showthread...newpost&t=2086
А то обидно, я часа полтора ковырялся, а никто даже не отписался =(
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хранение карт в формате хмл и их чтение Aceton C++ 3 25.03.2009 19:26
Коллизия картинок Petrofan 2D-программирование 4 28.10.2008 22:21
типы и хранение данных Akima 2D-программирование 16 10.02.2006 00:45
Лента из картинок impersonalis FAQ 2 04.10.2005 22:21


Часовой пояс GMT +4, время: 19:57.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com