![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
вставка собственного сивола [D7]
Вася © (2006-07-18 12:45:00)Возникла такая вот задача:
Требуется записывать в файл строки которым предшествует определенный сивол, т.е. например #178 + 'строка', пока это делается так, но требуется вставлять "нужный" символ который отсутсвует в списке стандартных.
Честно говоря незнаю даже и в какую сторону копать. Т.е. по сути надо "нарисовать" нужный символ довать его куда-то(наверно создать собственный шрифт?????) и из этого шрифта его добавлять.
Вообщем может есть у кого какие идеи, или каким макаром это можно сделать.
Desdechado (2006-07-19 13:13:00) [1]Еще раз повторю. Символы - это всего лишь способ представления.Он зависит от шрифта, от кодировки. Поэтому в блокноте ты увидишь то, что есть в файле с учетом выбранного из меню шрифта и кодировки в нем.
Если инсталлируешь свой шрифт, то сможешь его там выбрать. Но помни, что блокнот показывает все ОДНИМ шрифтом, а не как ворд, у которого каждый символ можно своим шрифтом сделать.
Поэтому #178 в одном шрифте будет иметь один символ, а в другом - другой. Аналогично и с содержимым остальной строки (может оказаться так, что в твоем шрифте будет правильно показываться твой символ и неправильно - остальные).
StriderMan (2006-07-19 13:11:00) [2]
> IceBeerg © (19.07.06 10:22) [2]
> Procedure WriteHemoroyToFile(HemoroyStr,HemoroyFile:String);
> Var
> HemoroyList:TStringList;
> HemoroyNum:Integer;
> Begin
> HemoroyList:=TStringList.Create;
> For HemoroyNum:=1 to 255 do
> HemoroyList.Add(Chr(HemoroyNum)+HemoroyStr);
> HemoroyList.SaveToFile(HemoroyFile);
> End
HemoroyList надо бы разрушить в конце. И try...finally не повредит.
Вася (2006-07-19 13:02:00) [3]Да, но допустим строка #149 + "строка", запишет в файл "жирную" точку и строку, и при откурытии блокнотом так и отбразиться, а мне нужно что-бы при открытии тем-же блокнотом отобразился мой символ + строка
to IceBeerg
Ща по-пробую...
IceBeerg (2006-07-19 10:22:00) [4]
Procedure WriteHemoroyToFile(HemoroyStr,HemoroyFile:String);
Var
HemoroyList:TStringList;
HemoroyNum:Integer;
Begin
HemoroyList:=TStringList.Create;
For HemoroyNum:=1 to 255 do
HemoroyList.Add(Chr(HemoroyNum)+HemoroyStr);
HemoroyList.SaveToFile(HemoroyFile);
End;
Вызов
procedure TForm1.Button1Click(Sender: TObject);
begin
WriteHemoroyToFile('йцукен+qwerty','c:\hem.txt');
end;
Далее см. c:\hem.txt, еще вопросы есть?
Desdechado (2006-07-18 12:47:00) [5]В файл пишутся не символы, а байты.
Поэтому никаких шрифтов для записи не требуется. Шрифты нужны для отображения (если оно тебе вообще нужно). Поэтому вариант #178 + 'строка' вполне нормален.