Witam,
W moim programie odrabiam grafikę i dodaję tekst własną czcionką. Czcionkę własną zdefiniowałem w ImageList, a funkcja Litera określa który numer bitmapy odpowiada wybranemu znakowi. Reszta zmiennych odpowiada za wykreślenie bitmapy odpowiedniej wielkości we właściwym miejscu niezależnie od rozdzielczości płótna. O ile nie ma problemów z drukowaniem na ekranie i na zwykłych drukarkach, to na kopiarce używając sterowników PostScript zamiast liter mam czarne prostokąty. Wszystkie inne grafiki nanoszone są bez problemu. Niestety muszę drukować w wysokiej rozdzielczości na kopiarce i raczej muszę użyć własnej czcionki. Proszę o pomoc w rozwiązaniu problemu.
Oto fragment kodu dodający tekst litera po literze na płótno (gdzie):
for n:=0 to 10 do begin
B2:=TBitmap.Create;
B2.Pixelformat:=pf24bit;
Czcionki.GetBitmap(Litera(s[n+1]),B2);
x1:=round(ox+n*litX*prX);y1:=round(oy+prY);
x2:=round(ox+(n+1)*litX*prX);y2:=round(oy+4*prY);
R1:=Bounds(0,0,B2.Width,B2.Height);
R2:=Rect(x1,y1,x2,y2);
gdzie.BrushCopy(R2,B2,R1,clWhite);
B2.Free;
end;
PS. Dodam że na wirtualnej drukarce Microsoft XPS jest OK, lecz na Adobe PDF jest tak samo jak na kopiarce. Poza tym, dotąd na PCL6 było dobrze, lecz z powodu błędów na trybie PostScript zainstalowałem najnowsze sterowniki (z maja) PS i PCL6. Na PS nic się nie zmieniło, a na PCL przestało drukować kolorowe grafiki (pozostały tylko czarne teksty i moje czcionki). Odinstalowanie najnowszych sterowników i zainstalowanie starych nie przyniosło żadnego efektu.