Форум «Всё о Паскале» _ Теоретические вопросы _ Процедура Outtext | Нужна помощь
Автор: The PRO 27.02.2007 20:20
Помогите настроить компилятор Borland Pascal 7.0 У меня через процедуру Outtext при попытке вывода знаков(.,?/'":; и т.д.), чисел и пробелов - компилятор выводит какие то непонятные символы. (Всё буквы выводятся нормально.) Подскажите, как это исправить. Я думаю что всё дело в настройках компилятора, но вот только каких?
Автор: Алена 27.02.2007 21:04
Цитата
Я думаю что всё дело в настройках компилятора
Почему? Что стало причиной для таких выводов?
По крайней мере, надо знать, как ты выводишь текст, каким шрифтом, в каком разрешении, ты ж ничего не говоришь - что можно сделать...
Автор: The PRO 27.02.2007 21:10
Цитата(Алена @ 27.02.2007 17:04)
Почему? Что стало причиной для таких выводов?
По крайней мере, надо знать, как ты выводишь текст, каким шрифтом, в каком разрешении, ты ж ничего не говоришь - что можно сделать...
Вывожу я по обычному, ничего не изменяя. Outtext('Hi world'); И в этом случае, вместо пробела появляется непонятный знак(
Автор: Алена 27.02.2007 21:18
Я второй раз вопросы не повторяю - пока не соизволишь ответить на ВСЕ, о чем я спросила - извини, я ничего говорить не буду...
Автор: The PRO 28.02.2007 21:37
1) Текст я вывожу так:
Uses graph,crt; var gd,gm:integer; begin gd:=0; gm:=0; initgraph(gd,gm,''); outtext('Hi a am 123'); readkey; end.
2) В разрешении 640*480 3) А вот каким шрифтом я вывожу этот текст я не знаю(наверное стандарным) 4) И компилятор у меня (Borland) Turbo Pascal 7.0
Автор: Артемий2 28.02.2007 22:03
Причины могут быть разные..А если такой текст в writeln запихать в не графическом режиме, то все нормально?
Автор: T i m e 28.02.2007 22:35
Ну по крайней мере readkey у тебя без crt не прокатит - это точно... А по делу... трудно сказать, почему так... может Паскаль глючный какой...
Автор: The PRO 28.02.2007 22:45
Цитата(Артемий2 @ 28.02.2007 18:03)
Причины могут быть разные..А если такой текст в writeln запихать в не графическом режиме, то все нормально?
Если в crt то всё нормально. Текст и цифры нормально выводятся.
Цитата(T i m e @ 28.02.2007 18:35)
Ну по крайней мере readkey у тебя без crt не прокатит - это точно... А по делу... трудно сказать, почему так... может Паскаль глючный какой...
Не паскаль не глючный. Я из учебки переписал, там всё нормально работает. Ну про crt забыл, извиняй.
Добавлено через 3 мин. Может кто знает где дастать какой нибуть нормальный и настроеный паскаль? Если знаете, дайте ссылку для скачивания.
Автор: Алена 28.02.2007 22:50
Изменение шрифта ничего не дает? Может, сам CHR файл битый? Попробуй:
Uses crt, graph; var gd,gm:integer; begin gd:=0; gm:=0; initgraph(gd,gm,''); settextstyle(smallfont, horizdir, 1); { <-- } outtext('Hi a am 123'); readkey; end.
(LITT.CHR должен лежать в той же папке, что и программа... На всякий случай...)
Автор: The PRO 28.02.2007 23:39
Цитата(Алена @ 28.02.2007 18:50)
Изменение шрифта ничего не дает? Может, сам CHR файл битый? Попробуй:
Uses crt, graph; var gd,gm:integer; begin gd:=0; gm:=0; initgraph(gd,gm,''); settextstyle(smallfont, horizdir, 1); { <-- } outtext('Hi a am 123'); readkey; end.
(LITT.CHR должен лежать в той же папке, что и программа... На всякий случай...)
Я попробовал. Всё так-же. И файл LITT.CHR есть, но может он и вправду битый...
Автор: TarasBer 28.02.2007 23:59
1. Стандартный шрифт глючит и у меня. Поэтому я им не пользуюсь. 2. Русские векторные шрифты (ссылку дал Volvo) (буквы ё нету...): http://pascal.sources.ru/graph/bgirfont.htm 3. Мой редактор векторных шрифтов (рекомендую перед использованием сделать резервную копию файла на всякий случай... И не разрешается более 320 векторов в символе, если их было больше при загрузке, то лишние векторы выкидываются...):
Тема уже не раз упоминалась. У меня кстати тот же баг. Тут проблема не в паскале а в железе. Где точно так до сих пор и не понял. Может в VGA адапторе ,а может и не в нём. Факт в том ,что льбым другим шрифтом кроме стандартного всё выводится потрясно .
Автор: Алена 1.03.2007 1:15
Цитата
льбым другим шрифтом кроме стандартного всё выводится потрясно
mamont001, однако, когда я попросила проверить работу smallfont, автор сказал, что результат тот же... Так что, читаем ВНИМАТЕЛЬНО ответы, договорились? То, что У ТЕБЯ было так, не значит, что ТАК должно быть у всех...
Автор: Артемий2 1.03.2007 1:18
Скачай другой с http://borlpasc.narod.ru..Может поможет...
Автор: The PRO 1.03.2007 3:13
Сейчас всё скачаю: Несколько версий Паскаля и утилит. Завтра напишу.
Автор: The PRO 1.03.2007 23:17
Скачал несколько версий паскаля. Попробовал все, но всё так и осталось Паскаль для Виндовс ваще не установить.(
Автор: TarasBer 1.03.2007 23:34
Цитата(The PRO @ 1.03.2007 19:17)
Скачал несколько версий паскаля. Попробовал все, но всё так и осталось Паскаль для Виндовс ваще не установить.(
Шрифты скачал? Шрифт не по умолчанию поставил?
Автор: The PRO 2.03.2007 0:50
Да. Всё скачал. Поставил шрифты. И ничего. Наверно дело в железе...
Автор: TarasBer 2.03.2007 1:11
Цитата(The PRO @ 1.03.2007 20:50)
Да. Всё скачал. Поставил шрифты. И ничего. Наверно дело в железе...
Очень странно... Очень... По-моему чёто совсем плохо с вашим компом... Ну хотя бы в моей программе менюшки русскоязычные (собственный шрифт использует)? Без иероглифов? А как она эти все векторные шрифты видит? А можно снимок экрана?
Автор: hiv 2.03.2007 14:57
Цитата(The PRO @ 28.02.2007 17:37)
Uses graph,crt; var gd,gm:integer; begin gd:=0; gm:=0; initgraph(gd,gm,''); outtext('Hi a am 123'); readkey; end.
Поставь вместо пустой строки путь где твои BGI лежат, у меня вот так работает отлично:
Uses graph,crt; var gd,gm:integer; begin gd:=0; gm:=0; initgraph(gd,gm,'C:\BP\BGI'); { <- здесь } outtext('Hi a am 123'); readkey; end.
Автор: The PRO 4.03.2007 0:39
Цитата(hiv @ 2.03.2007 10:57)
Поставь вместо пустой строки путь где твои BGI лежат, у меня вот так работает отлично:
Uses graph,crt; var gd,gm:integer; begin gd:=0; gm:=0; initgraph(gd,gm,'C:\BP\BGI'); { <- здесь } outtext('Hi a am 123'); readkey; end.
Это одно и то же. Путь к BGI нужно вписывать если паскаль самостоятельно не может определить где они лежат. Эффект тот же. Да я завтра у учителя спрошу - в чём проблема.
Автор: TarasBer 4.03.2007 0:59
Я начинаю верить в гипотезу Hiv о том что никакого LITT вы не загрузили. Скопируйте ВСЁ содержимое папки BGI в папку, где лежит Паскаль, может это поможет... Вы на 100% уверены что у вас загрузился именно LITT.CHR? Попробуйте сделать масштаб 10: SetTextStyle(SmallFont, 0, 10); Если символы получились нормальные (да, шрифт векторный, но битый), то ответьте - а в моей программе (см пред. посты в этой теме) буковки нормальные (она использует собственный шрифт)? Или попробуйте SetTextStyle(4, 0, 10) - должны получиться буковки с наворотами. А если символы получились из больших квадратиков (матричный шрифт по умолчанию, то есть вы не умеете менять шрифт, но говорите, что компьютер плохой и шрифт битый) - то проблема не в компьютере совсем, а я не буду говорить где, чтоб никого не оскорбить.
Автор: The PRO 4.03.2007 1:30
Цитата(TarasBer @ 3.03.2007 20:59)
Я начинаю верить в гипотезу Hiv о том что никакого LITT вы не загрузили. Скопируйте ВСЁ содержимое папки BGI в папку, где лежит Паскаль, может это поможет... Вы на 100% уверены что у вас загрузился именно LITT.CHR? Попробуйте сделать масштаб 10: SetTextStyle(SmallFont, 0, 10); Если символы получились нормальные (да, шрифт векторный, но битый), то ответьте - а в моей программе (см пред. посты в этой теме) буковки нормальные (она использует собственный шрифт)? Или попробуйте SetTextStyle(4, 0, 10) - должны получиться буковки с наворотами. А если символы получились из больших квадратиков (матричный шрифт по умолчанию, то есть вы не умеете менять шрифт, но говорите, что компьютер плохой и шрифт битый) - то проблема не в компьютере совсем, а я не буду говорить где, чтоб никого не оскорбить.
Тогда можешь залить на какой нибудь FTP сервер свой паскаль? И я проверю.
Автор: TarasBer 4.03.2007 2:15
Цитата(The PRO @ 3.03.2007 21:30)
Тогда можешь залить на какой нибудь FTP сервер свой паскаль? И я проверю.
У меня Паскаль вместе со всем всем всем 200 метров... Не могу.
Автор: Archon 4.03.2007 4:21
200 метров? Это непорядок.
Попробуй откомпилировать тестовую программу и запустить её на другом компе или выложи прямо здесь (вместе с файлом шрифта, разумеется). Только экзешник выкладывай через модераторов.
Автор: TarasBer 4.03.2007 17:07
Цитата(Archon @ 4.03.2007 0:21)
200 метров? Это непорядок.
Попробуй откомпилировать тестовую программу и запустить её на другом компе или выложи прямо здесь (вместе с файлом шрифта, разумеется). Только экзешник выкладывай через модераторов.
Вы к кому обращаетесь? Судя по первой фразе, ко мне, судя по второй - к Про. Паскаль у меня 200 метров, потому что мусора туда накидано. Даже фотографий есть немного.
Автор: The PRO 4.03.2007 21:19
Всё теперь работает - выводится нормально. Все файлы из BGI я скопировал в каталог с программой, при инициализации графики написал путь к папке BGI:
... Initgraph(gd,gm,'c:\bp\bgi'); ...
После этого нормально заработали шрифты и я, соответственно, использовал процедуру SetTextStyle. Вот образец с оптимальным шрифтом и его размером:
Uses crt,graph; Var gd,gm:integer; Begin gd:=0; gm:=0; Initgraph(gd,gm,'C:\BP\BGI'); { <== } SetTextStyle(2,0,0); { <-- } OutText('My number is 1357'); Readkey; End.
Мало ли у кого тоже такая проблема.
Автор: hiv 5.03.2007 13:57
Цитата(The PRO @ 4.03.2007 17:19)
Всё теперь работает - выводится нормально. Все файлы из BGI я скопировал в каталог с программой, при инициализации графики написал путь к папке BGI:
... Initgraph(gd,gm,'c:\bp\bgi'); ...
Еще раз объясняю: процедура Initgraph в начале ищет необходимые файлы в текущем каталоге, а потом в том, что указан в ее параметре. Я уверен, The PRO, что каталога c:\bp\bgi на твоей системе просто нету. Этот параметр нужно поменять на тот путь, где у ВАС лежат файлы BGI! Например в командной строке я набираю команду: dir c:\bp\bgi и вижу следующий список файлов:
Код
C:\>dir c:\bp\bgi Том в устройстве C не имеет метки. Серийный номер тома: 6833-5C49