Нечитаемый шрифт
От: sCream  
Дата: 27.09.03 07:09
Оценка:
Подскажите кто-нибудь...
Вывожу на печать некоторый текст (TextOut)
Текст получается некрасивый и сложно читаемый (особенно мелкий).
Как быть?
Re: Нечитаемый шрифт
От: ArtDenis Россия  
Дата: 27.09.03 07:24
Оценка:
Здравствуйте, sCream, Вы писали:

C>Подскажите кто-нибудь...

C>Вывожу на печать некоторый текст (TextOut)
C>Текст получается некрасивый и сложно читаемый (особенно мелкий).
C>Как быть?

Canvas->Font->Name = <любой красивый TTF шрифт>
... << RSDN@Home 1.1 beta 1 >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[2]: Нечитаемый шрифт
От: sCream  
Дата: 01.10.03 16:06
Оценка:
Здравствуйте, ArtDenis, Вы писали:

AD>Здравствуйте, sCream, Вы писали:


C>>Подскажите кто-нибудь...

C>>Вывожу на печать некоторый текст (TextOut)
C>>Текст получается некрасивый и сложно читаемый (особенно мелкий).
C>>Как быть?

AD>Canvas->Font->Name = <любой красивый TTF шрифт>


TTF шрифт — это True Type Font?
Т.е. векторный, масштабируемы шрифт...
Я правильно понял?
Тогда Times New Roman должен подойти?
Re[3]: Нечитаемый шрифт
От: ArtDenis Россия  
Дата: 01.10.03 16:25
Оценка:
Здравствуйте, sCream, Вы писали:
C>TTF шрифт — это True Type Font?
C>Т.е. векторный, масштабируемы шрифт...
C>Я правильно понял?
C>Тогда Times New Roman должен подойти?

Да. Хотя мне лично больше нравится Arial.
... << RSDN@Home 1.1 beta 1 >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[4]: Нечитаемый шрифт
От: akasoft Россия  
Дата: 03.10.03 04:23
Оценка:
Здравствуйте, ArtDenis, Вы писали:

AD>Да. Хотя мне лично больше нравится Arial.


Лучше MS Sans Serif под Windows ничего нет...
... << RSDN@Home 1.1 beta 2 >>
Re[5]: Нечитаемый шрифт
От: Sinclair Россия https://github.com/evilguest/
Дата: 03.10.03 04:55
Оценка: +2
Здравствуйте, akasoft, Вы писали:
A>Лучше MS Sans Serif под Windows ничего нет...
Ты что? Это же ужас! Для диалогов рулит Тахома однозначно!
... << RSDN@Home 1.1 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[6]: MS Sans Serif vs Тахома
От: ArtDenis Россия  
Дата: 03.10.03 13:30
Оценка: -1 :))
Здравствуйте, Sinclair, Вы писали:

S>Здравствуйте, akasoft, Вы писали:

A>>Лучше MS Sans Serif под Windows ничего нет...
S>Ты что? Это же ужас! Для диалогов рулит Тахома однозначно!

Переименовываем ветку в "MS Sans Serif vs Тахома" и переносим в "Философию программирования"
... << RSDN@Home 1.1 beta 1 >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[4]: Нечитаемый шрифт
От: sCream  
Дата: 04.10.03 07:51
Оценка:
C>>Тогда Times New Roman должен подойти?
AD>Да. Хотя мне лично больше нравится Arial.

Хм...

Видно, что шрифт на экране меняется,
но при печати он по-прежнему масштабируется
как картинка.
При вставке текста на канву он преобразовывается
в растровое изображение?

Наверное, дело не в шрифтах...
Скорее всего не правильно вывожу на печать.

Как мне правильно вывести на печать
изображение, а поверх него текст?
И чтобы текст при этом не масштабировался как картинка...
Re[5]: Нечитаемый шрифт
От: ArtDenis Россия  
Дата: 04.10.03 08:05
Оценка:
Здравствуйте, sCream, Вы писали:

C>Как мне правильно вывести на печать

C> изображение, а поверх него текст?
Всё очень просто, сначала рисуешь на канве принтера картинку, а затем текст. Чтобы фон текста не затирал картинку делаешь
Printer()->Canvas->Brush->Style = bsClear;

... и всё.

C>И чтобы текст при этом не масштабировался как картинка...

Не понял???
... << RSDN@Home 1.1 beta 1 >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
Re[6]: Нечитаемый шрифт
От: sCream  
Дата: 04.10.03 09:38
Оценка:
Здравствуйте, ArtDenis, Вы писали:

Делаю все следующим образом (где-то на форуме подсмотрел):


procedure PrintGraphic(ObjectToPrint: TGraphic; ObjectCanvas: TCanvas);
begin
  with Printer do
  begin
    BeginDoc;
    Canvas.CopyRect(Rect(0, 0, 1911, 2807), ObjectCanvas, Rect(0, 0, 273, 401) );
    EndDoc;
  end;
end;

//кнопка печати
procedure TForm1.Button3Click(Sender: TObject);
begin
PrintGraphic(Image1.Picture.Graphic, Image1.Canvas);
end;

//выводим текст на канву при активации формы
procedure TForm1.FormActivate(Sender: TObject);
begin
   with Image1.Canvas do
     begin
  Brush.Color:=clWhite;
  Image1.canvas.font.name:='Times New Roman';
  Image1.canvas.font.style:=[];
  Image1.canvas.font.height:=-7;
  textout (10,5,'ТЕКСТ');
  Image1.canvas.font.height:=-3;
  textout (10,20,'текст.');
    end;
end;


В итоге, получаем картинку и текст.
Картинка смаштабировалась и текст тоже.
Но текст масштабируется как растровое изображение, т.е. каждый пиксель увеличивается.
Прочитать такой текст практически невозможно. Особенно мелкий.

Спасибо.
Re[7]: Нечитаемый шрифт
От: ArtDenis Россия  
Дата: 04.10.03 09:52
Оценка: +1
Здравствуйте, sCream, Вы писали:
C>...
C>В итоге, получаем картинку и текст.
C>Картинка смаштабировалась и текст тоже.
C>Но текст масштабируется как растровое изображение, т.е. каждый пиксель увеличивается.

Так я и говорю, тебе надо рисовать текст не на картинке, а на Canvas принтера. Кроме того, не рекомендую задавать свойство Height у шрифта, лучше менять Size.

Денис.
... << RSDN@Home 1.1 beta 1 >>
[ 🎯 Дартс-лига Уфы | 🌙 Программа для сложения астрофото ]
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.