Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.08.10;
Скачать: [xml.tar.bz2];

Вниз

Печатаются крякозябры   Найти похожие ветки 

 
Циркуль   (2008-07-06 12:49) [0]

Имеется метод, выводящий нумерацию страниц на канву. В него передается либо канва, на которой рисуем превью, либо канва принтера. Так вот, иногда, на отдельных клиентских компах  бывает такая ситуация, что при печати на принтере русский текст (переменная PageText) выводится всякими левыми символами, причем этот же метод в превью на тех же компах все рисует корректно. И воспроизводится не со всеми шрифтами, например, для Arial или Times New Roman - воспроизводится, для Bookman Old Style - нет, и в превью и на печати все пучком.

procedure TSomeClass.DrawFooter(ACanvas: TCanvas; ARect: TRect; APageNumber, AFontSize: Integer);
var
 AFooterFont: TFont;
 AOldFontHandle: hFont;
 DC: hDC;
begin
 AFooterFont := TFont.Create;
 try
   AFooterFont.Assign(FFooterFont);
   AFooterFont.Size := AFontSize;
   DC := ACanvas.Handle;
   AOldFontHandle := SelectObject(DC, AFooterFont.Handle);
   try
     SetBkMode(DC, TRANSPARENT);
     ...
       DrawText(DC, PChar(SysUtils.Format(PageText + " %d/%d", [APageNumber, PageCount])),
                                          -1, ARect, DT_BOTTOM or DT_SINGLELINE or DT_CENTER);
     ...
   finally
     SelectObject(DC, AOldFontHandle);
   end;
 finally
   AFooterFont.Free;
 end;
end;


Где грабли?


 
KilkennyCat ©   (2008-07-06 19:07) [1]

Грабли в настройках компов. Это не только Ваш код так может чудить, например, недавно так чудил на одной из машин вполне добротный Акробат Реадер с невполне добротным драйвером ньюлетта-паккарда.


 
Anatoly Podgoretsky ©   (2008-07-06 21:02) [2]

> KilkennyCat  (06.07.2008 19:07:01)  [1]

> вполне добротный Акробат Реадер с невполне добротным драйвером ньюлетта-паккарда.

Вообще то ни то, ни другое добротным назвать нельзя.


 
Anatoly Podgoretsky ©   (2008-07-06 21:04) [3]

В настройках принтрера поставить печать шрифтов битмапами.


 
Циркуль   (2008-07-06 23:55) [4]

Спасибо :)



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.08.10;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.006 c
2-1215575714
Muh
2008-07-09 07:55
2008.08.10
Как в цикле перебрать допустим combobox1, combobox2


2-1215436005
Сергей
2008-07-07 17:06
2008.08.10
Почему не подключает Winrar? Sorry


15-1214082477
Поросенок Винни-Пух
2008-06-22 01:07
2008.08.10
3:1


4-1194466380
Still Swamp
2007-11-07 23:13
2008.08.10
Не могу получить сообщение:


1-1196253404
Elec3C
2007-11-28 15:36
2008.08.10
Приоритет программ через CreateProcess





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский