Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];
Внизпринцип вставления смайликов в ICQ. Найти похожие ветки
← →
Elvis (2005-06-03 12:43) [0]Расскажите мне пожалуйста по какому принципу вставляются смайлики в ICQ.
И тот кто получает сообщение видит смайлик который был вставлен .....
← →
dmitry501 © (2005-06-03 12:51) [1]Elvis (03.06.05 12:43)
Смайлики передаются обычними символами, например :), :( а клиент преобразует его в картинку
← →
Jeer © (2005-06-03 12:54) [2]:-& лишившийся дара речи; смутившийся; косноязычный
:-р высовывающий язык
:-s непоследовательный, бессвязный
:-/ скептик
:-\ нерешившийся
о:-) ангел
>:-) дьявол
:-q пытающийся достать языком до носа
:-а то же самое, но с другой стороны
:-е разочарованный
:-о ox-ox
:-9 облизывающий губы
:-О не ори! (также оратор)
← →
Eraser © (2005-06-03 13:03) [3]Elvis (03.06.05 12:43)
То, что описАл dmitry501 © (03.06.05 12:51) [1] это ещё пол беды -- реализуется не так сложно, главная проблема обратный процесс, т.е. преобразование картинки в смайлик. Сам давно хочу выяснить, как это работает.
← →
Digitman © (2005-06-03 13:09) [4]
> Расскажите мне пожалуйста по какому принципу вставляются
> смайлики в ICQ
в ICQ никакие "смайлики" не вставляются, ICQ - это сеть, работающая по спецпротоколу, в котором ни каких смайликов не было и нет.
если же под ICQ подразумевается некая программа-клиент, "умеющая" в поступающих текстовых сообщениях распознавать комбинации символов (см.выше) и интерпретировать их как команды на отрисовку в соотв.позициях соотв.смайликов, то это просто фича клиентской программы, а не ICQ вообще
← →
Elvis (2005-06-03 13:17) [5]>>>программа-клиент, "умеющая" в поступающих текстовых сообщениях распознавать комбинации символов (см.выше) и интерпретировать их как команды на отрисовку в соотв.позициях соотв.смайликов
>>>
ну дык а как такое сделать-то??
← →
Alexander Panov © (2005-06-03 13:20) [6]Elvis (03.06.05 13:17) [5]
ну дык а как такое сделать-то??
Так в чем проблема?
Алгоритм простой.
Перед передачей кода смайлика вставляешь неотображаемый символ-флажок в передаваемый поток данных.
На приемной стороне проверяй. Вот и весь алгоритм.
← →
iskatel © (2005-06-03 15:51) [7]на кой икс флажок? просто в полученной строчки ищешь комбинации символов образующих смайлики...
← →
Alexander Panov © (2005-06-03 15:58) [8]iskatel © (03.06.05 15:51) [7]
А на такой, что такая комбинация символов - не обязательно смайлик.
← →
Eraser © (2005-06-03 16:00) [9]Alexander Panov © (03.06.05 15:58) [8]
Не... iskatel © (03.06.05 15:51) [7] прав, никаких флажков там нету, т.к. даже если вручную набрать смайли - его преобразует в картинку.
← →
Kerk © (2005-06-03 16:02) [10]Флажков там нету :)) идет простой текст вида :) :( и и.д... как юзер миранды хорошо с этим знаком :)) Периодически набиваю вещи вроде *JOKINGLY* :))))
← →
Fay © (2005-06-03 16:14) [11](.)(.) Ms. Dos
← →
Alexander Panov © (2005-06-03 16:36) [12]Eraser © (03.06.05 16:00) [9]
никаких флажков там нету, т.к. даже если вручную набрать смайли - его преобразует в картинку.
Причем здесь "Там"?
Человеу надо сделать подобную вещь, как я понимаю.
И делать надо не как там, а как правильно.
← →
Игорь Шевченко © (2005-06-03 16:39) [13]Alexander Panov © (03.06.05 16:36) [12]
> И делать надо не как там, а как правильно.
Посмотри протокол мастаковского чата. Смайлики есть, а невидимых флажков нету.
← →
Eraser © (2005-06-03 16:43) [14]Alexander Panov © (03.06.05 16:36) [12]
По той же причине, что я написал в [9] по-другому сделать нельзя, т.к. некоторым пользователям, например Kerk"у удобнее "набирать" смайлик вручную, при этом не о каких флажках не может быть и речи.
Другой вопрос это обратное преобразование. ICQ клиент (и не только, VyPress тоже так умеет) умеет "преобразовывать" картинку-смайлик в текстовый смайлик, т.е. в картинках-смайликах есть какие-то иднтификаторы... так и не разобрался как оно сделано.. если кто знает раскажите, буду очень благодарен ;-)
← →
Игорь Шевченко © (2005-06-03 16:52) [15]Eraser © (03.06.05 16:43) [14]
> это обратное преобразование
Какое обратное преобразование ? Ты о чем ? Картинки возникают только в момент отображения сообщения.
← →
Eraser © (2005-06-03 16:55) [16]Игорь Шевченко © (03.06.05 16:52) [15]
Не... когда в ICQ-клиенте в менюшке выбираешь смайлик - он появляется в тексте отправителя в ГРАФИЧЕСКОМ виде, т.е. картинкой. Если эту картинку перетащит на какой-нибудь RichEdit, например WordPad, то картинка преобразуется в текстовое представление... попробуйте.
← →
Gero © (2005-06-03 17:00) [17]
> Alexander Panov © (03.06.05 16:36)
Это смотря что требуется.
Если нужно преборазование текста в смайлы — то флажки не нужны.
Если предполагается, что юзер будет каждый раз наживать «вставить смайл», то нужны. Но это не очень удобно.
← →
BasiL_666_ © (2005-06-03 17:02) [18]имхо, в любом случае вставляються текстовые варианты, а клиент уже сам преобразует это в картинку....
← →
Eraser © (2005-06-03 17:06) [19]BasiL_666_ © (03.06.05 17:02) [18]
Дык не везде вставляются текстовые варианты, ICQ 2003, 4, 5 видел? При нажатии "вставить смайл" вставляется картинка.
← →
Игорь Шевченко © (2005-06-03 17:09) [20]Eraser © (03.06.05 17:06) [19]
> При нажатии "вставить смайл" вставляется картинка.
Отображается, а не появляется. Почувствуйте разницу.
← →
Eraser © (2005-06-03 17:16) [21]Игорь Шевченко © (03.06.05 17:09) [20]
Дык понятно, что отображается, а перед передачей данных заменяется текстом... только где вот этот текст хранится...
← →
Игорь Шевченко © (2005-06-03 17:20) [22]Eraser © (03.06.05 17:16) [21]
> только где вот этот текст хранится...
Внутре :) Путешествует промеж клиентом и сервером и обратно.
← →
BasiL_666_ © (2005-06-03 17:39) [23]либо я чего то не понимаю, либо одно из двух... вставляетсмя в любом случае текстовый вариант смайла, а клиенте он просто сразу же замещается картинкой... передается тоже текстовый вариант а в клиенте он заменяется снова на каринку.. чего тут непонятного может быть... а каких преобразованиях ваще может идти речь???7
← →
Alexander Panov © (2005-06-03 17:44) [24]Ну так про то и речь идет.
ICQ-клиенту без разницы, что ъхотел пользователь. Если в тексте встретится определенная комбинация символов, он смайл отобразит. Но это ведь неправильно.
← →
Eraser © (2005-06-03 17:46) [25]BasiL_666_ © (03.06.05 17:39) [23]
вставляетсмя в любом случае текстовый вариант смайла
Куда вставляется?
передается тоже текстовый вариант
Откуда передаётся?
← →
Eraser © (2005-06-03 17:47) [26]BasiL_666_ © (03.06.05 17:39) [23]
Ты хочешь сказать, что имеется скрытая копия редактора ввода, где смайлы всегда текстовые... врядли.
← →
BasiL_666_ © (2005-06-03 17:49) [27]куда те нада туда и вставляется (Memo, RichEdit и тд..)...
а передается по сети или по инету все зависит от клиента...
наскока я понял делается именно сообственный ICQ-клиент...
← →
Eraser © (2005-06-03 17:51) [28]BasiL_666_ © (03.06.05 17:49) [27]
Делается новая версия одной моей проги ) не, с ICQ пока не связано...
← →
BasiL_666_ © (2005-06-03 17:52) [29]я не понимаю а в чем может быть проблема при написание сообщения заменять их сразу на картинки??? то есть вставляется не картинка, а ее текстовый вариант.... а в клинет просто сразу распознается как смайл и заменяется картинкой....
← →
Eraser © (2005-06-03 17:55) [30]BasiL_666_ © (03.06.05 17:52) [29]
я не понимаю а в чем может быть проблема при написание сообщения заменять их сразу на картинки???
Да хочется, чтобы при написании сообщения, если выбрать в меню картинку-смайл вставлялась НЕ надпись *LOL*, а картинка, как в ICQ.
← →
Игорь Шевченко © (2005-06-03 17:58) [31]Eraser © (03.06.05 17:55) [30]
В ICQ вставляется надпись. Которая отображается, как картинка.
← →
Eraser © (2005-06-03 18:00) [32]Игорь Шевченко © (03.06.05 17:58) [31]
А как это можно самому организовать? Возможно ли это сделать на базе TJvRichEdit?
← →
BasiL_666_ © (2005-06-03 18:01) [33]я так полагаю это трудно реализуемо, если меня до сих пор не поняли.... вообщемто не буду спорить.. я говорил как эту проблему понимал я.... не более того...
← →
Alexander Panov © (2005-06-03 18:09) [34]Eraser © (03.06.05 18:00) [32]
Да реализвать можно как угодно.
Тот же клиент ICQ хранит информацию, связанную с любым отображаемым объектом.
Точно так же реализуется и для своей реализации.
Отрисовываешь рисунок на канве - в массиве сохраняешь свойства этого рисунка(ам же хранятся и координаты рисунка, естественно).
При начале Drag извлекатеся информация из этого массива.
← →
Alexander Panov © (2005-06-03 18:10) [35]Eraser © (03.06.05 18:00) [32]
я так полагаю это трудно реализуемо
Это не сложно.
← →
Eraser © (2005-06-03 18:11) [36]BasiL_666_ © (03.06.05 18:01) [33]
Просто в посте [29] ты напсал 2 противоречащие друг другу мысли "заменять их сразу на картинки" и "то есть вставляется не картинка, а ее текстовый вариант" прочитал это несклько раз, так и не понял, что ты имел ввиду.
← →
Alexander Panov © (2005-06-03 18:14) [37]Eraser © (03.06.05 18:11) [36]
Для того, чтобы понять раз и навсегда, поробуй определить проблемы с написанием собственного редактора. Причем использовать только канву без готовых редакторов.
Вт тогда ты поймешь, как хранятся все изображения, текст и прочие объекты в подобных приложениях.
← →
Eraser © (2005-06-03 18:14) [38]Alexander Panov © (03.06.05 18:09) [34]
О, это уже ближе к телу )
Просто хотелось бы на 100% узанть, что не сществует типовых вариантов.
А насчёт координат - опять же врядли... в том, то и проблема - идентифицировать рисунок.
Буду разбираться.
← →
Eraser © (2005-06-03 18:16) [39]Alexander Panov © (03.06.05 18:14) [37]
Класс окна ввода в ICQ 5 - RichEdit20A....
← →
Alexander Panov © (2005-06-03 18:18) [40]Eraser © (03.06.05 18:14) [38]
А насчёт координат - опять же врядли... в том, то и проблема - идентифицировать рисунок.
Ну вот. Опять снова то же самое.
В любом редакторе, который поддерживает вставку объектов, отличных от текста, необходимо сохранять информацию об этих объектах. Для этого приложение сохздает массив структур, которые связаны каждая со своим объектом.
Как минимум, в этой структуре хранятся:
позиция для отображения на канве(x,y)
размеры либо ссылка на исходный объект.
При любых перерисовках канвы эти сруктуры динамически изменяются для актуализации тех же координат отображения на канве.
Таким образом, приложение в любой момент времени знает, что находится в любой точке канвы, и всегда находит связанную с этой точкой структуру.
Страницы: 1 2 вся ветка
Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];
Память: 0.55 MB
Время: 0.066 c