Модераторы: Snowy, Alexeis, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Canvas и вертикальный текст, Вертикальный текст на принтер 
:(
    Опции темы
pixland
Дата 7.3.2010, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 10.2.2010

Репутация: нет
Всего: нет



Доброго времени суток! Такая вот проблема, есть код вывода на принтер, теперь поменялись билетики и надо текст выводить вертикально. Как реализовать именно в этом контексте, не могу понять. Буду очень рада если Вы поможете мне

Код

Procedure TF_main.GetPrinterInfo;
begin
  PixelsX:=GetDeviceCaps(printer.Handle,LogPixelsX);
  PixelsY:=GetDeviceCaps(printer.Handle,LogPixelsY);
  MX := GetDeviceCaps(Printer.Handle, PHYSICALOFFSETX);
  MY := GetDeviceCaps(Printer.Handle, PHYSICALOFFSETY);
end;

Function TF_main.PX(x:integer):integer;
begin
 PX:=round(PixelsX/25.4*x);
end;
Function TF_main.PY(Y:integer):integer;
begin
 PY:=round(PixelsY/25.4*Y);
end;



function TF_main.printticket(ser,price,name,date,time,screen,row,place:string):boolean;
var i:integer;
 begin
with printer do
canvas.Font.Name:='Arial';
canvas.Font.Size:=6;
canvas.Font.Style:=[];
canvas.textout(px(1),py(4),ser);
canvas.textout(px(55),py(15),ser);
canvas.Font.Size:=10;
canvas.Font.Style:=[fsBold];
canvas.Font.Color:=CLBlack;
canvas.textout(px(57),py(4),price);
canvas.textout(px(38)-round(printer.canvas.textwidth(name)/2),py(36),name);
canvas.textout(px(19)-round(printer.canvas.textwidth(date)/2),py(44),date);
canvas.textout(px(57)-round(printer.canvas.textwidth(screen)/2),py(44),screen);
canvas.textout(px(19)-round(printer.canvas.textwidth(time)/2),py(50),time);
canvas.textout(px(57)-round(printer.canvas.textwidth(row)/2),py(50),row);
canvas.textout(px(19)-round(printer.canvas.textwidth(price)/2),py(57),price);
canvas.textout(px(57)-round(printer.canvas.textwidth(place)/2),py(57),place);}

end;
end;



PM MAIL   Вверх
Proxin
Дата 7.3.2010, 13:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 363
Регистрация: 21.6.2008

Репутация: нет
Всего: 3



что значит "выводить текст вертикально"? весть текст в столбик, или каждое слово в отдельный?
PM MAIL   Вверх
pixland
Дата 7.3.2010, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 10.2.2010

Репутация: нет
Всего: нет



Собственно говоря "вертикально" это весь текст выводить с поворотом на 90 градусов. То есть каждую строку текста повернуть на 90. Суть проблемы в картинках.

Было вот так вот

user posted image

Надо чтобы выводилось так

user posted image

PM MAIL   Вверх
Proxin
Дата 7.3.2010, 22:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 363
Регистрация: 21.6.2008

Репутация: нет
Всего: 3



PM MAIL   Вверх
weirdo_vista
Дата 8.3.2010, 07:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 24.1.2008

Репутация: нет
Всего: нет



но там же не через канву? какой-то слишком долгий способ, но все равно спасибо!
PM MAIL   Вверх
bems
Дата 8.3.2010, 07:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 1
Всего: 88





--------------------
Обижено школьников: 8
PM MAIL   Вверх
scalosale
Дата 8.2.2023, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 8.2.2023

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.1164 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.