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

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

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 2D-программирование

2D-программирование Вопросы, касающиеся двумерного программирования

Ответ
 
Опции темы
Старый 28.07.2006, 13:12   #1
Stranger
AnyKey`щик
 
Регистрация: 28.07.2006
Сообщений: 18
Написано 0 полезных сообщений
(для 0 пользователей)
Небольшая проблема с CreateImage

image=CreateImage(70,20)
SetBuffer ImageBuffer(image)
Color 255,255,255
Rect 0,0,70,20
Color 0,0,0
font1=LoadFont ("impact",20)
SetFont font1
Text 0,0,"Открыть"
FreeFont font1

SetBuffer FrontBuffer()
DrawImage image,100,100
WaitKey()
End
Нужно, чтобы в белом прямоугольнике писалось слово "Открыть", но Блиц пропускает последнюю букву, хотя видно, что для нее пространство еще есть. В чем может быть проблема?
(Offline)
 
Ответить с цитированием
Старый 28.07.2006, 15:54   #2
ZanoZa
Элита
 
Регистрация: 02.10.2005
Сообщений: 1,789
Написано 132 полезных сообщений
(для 252 пользователей)
Re: Небольшая проблема с CreateImage

Проблема,как я понимаю, в глячности команды text с русскими шрифтами.
С англ. шрифтами всё в порядке.
Кстати, если использовать шрифт "Times New Roman cyr", то у текста вообще отсекает 2 буквы
(Offline)
 
Ответить с цитированием
Старый 28.07.2006, 16:06   #3
ZanoZa
Элита
 
Регистрация: 02.10.2005
Сообщений: 1,789
Написано 132 полезных сообщений
(для 252 пользователей)
Re: Небольшая проблема с CreateImage

Просто сделай image побольше
(Offline)
 
Ответить с цитированием
Старый 28.07.2006, 16:59   #4
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Re: Небольшая проблема с CreateImage

Блитц не корректно отображает кирилические шрифты. Это давно известно. Есть различные методы решения самы простой -"в лоб":
Graphics 800,600,32
SetFont LoadFont("arial cyr",20)
TEXTS$= "Нужно, чтобы в белом прямоугольнике писалось слово ''Открыть'', но Блиц пропускает "
Text 0,0,TEXTS$
For I=1 To Len(TEXTS)
	Text 0+StringWidth(Left(TEXTS,I-1)),40,Mid(TEXTS,I,1)
Next
Flip
WaitKey()
End
Первая строчка, которая выводится без премудростей - обрывается на предпоследнем слове; вторая - выодится полностью.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 29.07.2006, 13:50   #5
Stranger
AnyKey`щик
 
Регистрация: 28.07.2006
Сообщений: 18
Написано 0 полезных сообщений
(для 0 пользователей)
Re: Небольшая проблема с CreateImage

impersonalis, спасибо, теперь понял, как это сделать. Раньше не замечал такой полезной команды как StringWidth.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема с С++ HAMANN C++ 10 24.12.2009 09:31
Проблема rr333 3D Моделирование 10 07.06.2009 17:08
Проблема в MP Nautilus MidletPascal 4 26.10.2008 05:30
Небольшая проблемка с ньютоном... LD 3D-программирование 2 25.01.2008 02:19
Определился с игрой для курсовой.... нужна небольшая помощь... Raiter Болтовня 28 10.09.2006 17:04


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


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