forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Библиотеки (http://forum.boolean.name/forumdisplay.php?f=124)
-   -   Lib_text: вывод текста в окно с переносом и стилями (http://forum.boolean.name/showthread.php?t=6093)

Piligrim 09.07.2008 11:40

Lib_text: вывод текста в окно с переносом и стилями
 
Вложений: 1
При разработке графических приложений часто возникает необходимость вывести какой-нибудь текст на экран. Если сообщение небольшое, то с этой задачей прекрасно справляется метод drawString,. Проблемы возникают при выводе длинного текста. Класс Graphics не содержит встроенного метода для отображения многострочного текста, поэтому перенос строк в j2me приходится реализовывать вручную.
Собственно, оригинал статьи http://www.mobilab.ru/articles/96/
Библиотека полностью реализует возможности класса.
Константы для шрифтов:
Код:

STYLE_PLAIN = 0;
STYLE_BOLD = 1;
STYLE_ITALIC = 2;
STYLE_UNDERLINED = 4;
SIZE_SMALL = 8;
SIZE_MEDIUM = 0;
SIZE_LARGE = 16;
FACE_SYSTEM = 0;
FACE_MONOSPACE = 32;
FACE_PROPORTIONAL = 64;


Phantom 09.07.2008 13:26

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Блин. Я так и делал, только без:
PHP код:

public static void init() {
            
MLT = new MultiLineText();
    } 

=)

odd 09.07.2008 22:24

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Опередили. А так хотелось самому сделать. :-(
Впрочем, есть у меня мысли по улучшению...

Piligrim 09.07.2008 23:13

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Извиняюсь, устал смотреть как каменный цветок выходит :(

Strelok 11.07.2008 22:49

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
pilgrim, а можешь добавить функцию чтоб возвращала на сколько строк разбило текст? Очень надо

Piligrim 12.07.2008 16:00

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Strelok, да могу конечно.
Кстати, сто лет не писал ничего на МР, забыл уже. Константы для шрифтов подойдут из самого МР, те, которые используются в SetFont.

Phantom 12.09.2008 05:18

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Вот в этом классе используется вектор. То, что работа с ним медленнее, чем с массивом, - я понял. А по памяти как? Намного больше массива он потребляет? Там в вектор заносятся слова, как я понял. А числа в нём хранить можно? Я просто подумал, может лучше хранить не слова, а позиции слов в строке. Может так оптимизированнее будет? Что скажете?

Piligrim 12.09.2008 09:44

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Позиции слов? А сами слова тогда где? :)
Вообще, конечно, разбивать на слова не обязательно, достаточно на строки.
Памяти вектор ест больше, он же динамический. Хранить в нем можно абсолютно любой класс.

Phantom 12.09.2008 09:54

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
А сами слова в той же строке. гг... Я просто думаю, как его применить к моей Либ_ст, чтобы скролинг сделать. Мне кажется, это практически нереально...

Rosetau 06.11.2008 22:54

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
привет всем, пожалуйста, объясните как правильно прокручивать текст?

если он по умолчанию это делает, то ни на джойстик ни на 2-8 не реагирует. код беру из примера

sasha_peleng 10.11.2008 18:47

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Цитата:

Сообщение от Rosetau (Сообщение 90183)
привет всем, пожалуйста, объясните как правильно прокручивать текст?

если он по умолчанию это делает, то ни на джойстик ни на 2-8 не реагирует. код беру из примера

Он не прокручивает по умолчанию :stop:

Chehovich-Igor 06.01.2009 00:43

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Вложений: 1
Цитата:

Сообщение от Rosetau (Сообщение 90183)
привет всем, пожалуйста, объясните как правильно прокручивать текст?

если он по умолчанию это делает, то ни на джойстик ни на 2-8 не реагирует. код беру из примера

Я взял и добавил в пример прокрутку текста.

Вот программа:
Program MultLine;

uses text;

Var key: integer;

Begin

text.init;
text.set_text_par(10, 10, getWidth-10, getHeight-10, 1, 16, 2, 64,'Просто проверка работы этого класса при использовании мобильного паскаля и других фишек. Это просто смешно и прикольно. Просто проверка работы этого класса при использовании мобильного паскаля и других фишек. Это просто смешно и прикольно.');

repeat
setColor(128,255,0);
fillRect(0,0,GetWidth,GetHeight);
setColor(0,128,64);
text.draw_mult_str;
Repaint; Delay(100);
key:=KeyToAction(GetKeyPressed);
if key=GA_UP then text.Mode_Up;
if key=GA_DOWN then text.Mode_Down;
if key=GA_LEFT then text.Page_Up;
if key=GA_RIGHT then text.Page_Down;
until false;

End.

и сам файл.

temned 18.01.2009 00:32

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Парни, дайте кто-нить help к либе, с описаниями комманд. А то надо делать все по правилам :
http://forum.boolean.name/showthread.php?t=5499

Piligrim 18.01.2009 11:20

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Цитата:

Очень нужная либа. Поддержка блутуз. Все функции описаны в примере. Но если кто не понял, просите, опишу функции в readme. Внимание: Эмуляторы стандартные не поддерживают bluetooth. Автор: pilgrim.
Да, наглости не занимать. Сам не разобрался, но выложить не забыл. То же самое будет и со всеми остальными? Похоже пора включать строку "Только для boolean.name" :(
PS: К сведению, стандартные эмуляторы, как то WTK, прекрасно работают с bluetooth. Честное слово, стоит иногда читать букварь, прежде чем вводить в заблуждение людей. >>:(

temned 18.01.2009 21:06

Раскрой
 
Я это уже исправил. Сам сделал описание. Может быть я и делаю нагло, но как быть? Посмотри сам на свои либы: что такое-кинуть людям либу с однимми class и java файлами,+пример, а дальше сами как-нибудь разбирайтесь. Кроме тебя самого никто не поймет. Посмотри как по-человечески делает odd. И пример, и описание, и либа есть у парня-прям программировать хочется. А у тебя? Пользователи сами должны делать readme к твоим либам. Если я не прав, то скатайте и посмотрите эти либы:
Lib_text
Lib_bt
Lib_socket
Lib_dbl
>>:( >>:(
p.s: а по поводу 'только для forum.boolean.name' - я не нарушаю ничьих авторских прав, наоборот даже указываю автора, распространяю либы, написанные им!

Phantom 18.01.2009 23:06

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
TEMNED, я фигею от таких людей, как ты. Тебе что-то не нравится? - Пе%&уй отсюда! История недавно была, НоваФилм задержали перевод сериала Побег по техническим причинам, так многие люди чуть ли не бунт устроили в адрес НоваФилма. Хотя переводы от НоваФилма делаются только лишь по их доброте душевной и никаких гарантий они никому никогда не давали. Я уже давно слежу за твоими постами - ты ещё ничего дельного не написал на этом форуме. Более того, постоянно клянчишь помощи, не желая разобраться в элементарном и пытаясь прыгнуть выше головы. Как кто-то тут сказал: "Убейся, пеши арканоид!", - или как-то так =). Меня прямо до невозможности раздражает такой тип людей - тупое быдло. Ты серьёзно думаешь, что в праве указывать МОДЕРАТОРУ (или админу?), что ему делать на своём сайте?

temned 19.01.2009 02:10

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
НАСколько я знаю модератором является vint. Я НЕ Говорю, что либа не так сделана, что переделать надо. Весь вопрос в оформлении. да pilgrim сильный в этом деле, мне до него далеко. И я думаю, что и большая часть форума его поддержит, но сами поймите: дать либу, без описаня функции, может быть вы уважаемый фантом и поняли, но я, а думаю, не только я, не очень поняли описание. а так извините за мою наглость, просто по- другому нельзя- почему-то я не прошу описания либ в постах odda и vinta. З.Ы: НЕ ТАК уж нагло я сказал: парни, может кто может дать описание... форум для того и существует, что бы не знающие просили помощи у более знающих

Piligrim 19.01.2009 17:20

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Да, модератор в этом разделе VINT, более того, я рекомендовал его администрации на эту должность.
Мне не жалко своего труда, хотя я не пишу ничего на МР уже три года.
Но мне принципиально не нравится, как вы используете его. Phantom_wc прав, я не видел ни одной вашей строчки кода, в том числе и на сайте, который вы продвигаете. А если вы все рассматриваете с позиции: здесь я никто, а там админ, то уж простите.
Цитата:

Да. Парни надо би добавить оформление, окно, кнопки, все такое, запоковать в инсталятор, дать всем, штоб разкладивали везде по инету, и готов MIDLETPASCAL 2.04 например, тока надо шо-нить уникальное, т.е новое. Говорите, што бы кто хотел видеть новое в новой версии мидлетпаскаль.
А сообщения такого плана, в теме, которая наверное, самая сложная в ветке, не прибавляют вам рейтинга.

temned 19.01.2009 22:13

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Lib_rc

Winner 16.05.2009 00:34

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Можно как-то вручную перенести текст с любого места на новую строку? В общем сделать Enter в нужном месте.

Richik 24.05.2009 02:12

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Описание позиций в команде отображения "text.set_text_par"

PHP код:

(x1y1x2y2116664'Текст');
 |   |   |   |   |   |  |   + 
Тип шрифта0-SYSTEM(системный); 32-MONOSPACE(интервал); 64  PROPORTIONAL(пропорциональный)
 |   |   |   |   |   |  +
Стиль текста0-обычный1-жирный2-курсив3-жирный курсив4-подчеркнутый5-Жирный подчеркнутый6-подчеркнутый курсив7-жирный подчеркнутый курсив
 
|   |   |   |   |   + Размер8-мелкий0-средний16-Большой
 
|   |   |   |   + Скорость прокрутки
 
|   |   ----+ Координаты правого нижнего угла (область отображения текста)
 ----+ 
Координаты левого верхнего угла (область отображения текста

Цитата:

Парни, дайте кто-нить help к либе
Действительно, без хелпа очень сложно разобраться, тем более в незнакомой среде (я с MIDletPascal совсем недавно общаюсь)...

PS: Не бейте меня, я хороший :@

Dj_Alex 05.08.2009 21:06

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
как выполнить перенос на новую строку в середине текста? chr(10) и chr(13) не пашут.

Richik 08.08.2009 13:45

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
так что там с переносами?, кто нить знает?

DuMOHsmol 17.03.2011 23:38

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Вложений: 1
Немножечко переделал MultiLineText.class. Теперь можно принудительно вставить перенос строки. Для этого надо в месте переноса написать \n (от других слов оно обязательно должно быть отделено пробелами).

DuMOHsmol 18.03.2011 00:23

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Вложений: 1
Вот, чуть еще переделал. Если в начало строки поставить \b (без пробелов), то строка станет жирным шрифтом. Это всё конечно криво, но вроде рабочее.

Phantom 18.03.2011 00:31

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
DuMOHsmol, начал изучать java? =)

Vasiliy_LiGHT 21.12.2013 14:25

Ответ: Lib_text: вывод текста в окно с переносом и стилями
 
Цитата:

Сообщение от DuMOHsmol (Сообщение 183107)
Немножечко переделал MultiLineText.class. Теперь можно принудительно вставить перенос строки. Для этого надо в месте переноса написать \n (от других слов оно обязательно должно быть отделено пробелами).

Область просмотра, как я понял, привязана к конкретному тексту. А если в тексте нужно вставить изображения? При жтом они должны прокручиваться вместе с текстом. Как поступить?


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot