Skocz do zawartości

[delphi] Drukowanie canvas


Max1414

Polecane posty

Witam!

 

Robie coś takiego, iż rysuje na canvie różne rzeczy i chcę dać użytkownikowi możliwość wydrukowania tego(jest mi to bardzo potrzebne) i teraz jak w najprostszy sposob to zrobić...

 

Próbowałem jeszcze raz to przerysowywać na Printer.Canvas .... ale coś mi niektóre wymiary(bo to rysunek techniczny) wychodza nie tak jak powinny, a u mojego znajomego to jeszcze inaczej to wyglada...

 

Proszę o pomoc. Moze w jakis sposob by zapisac canve do pliku i dopiero wydrukowac plik?

Moje projekty: http://wojciechkulik.pl

Link do komentarza
Udostępnij na innych stronach

Znaczy w sensie "rysuj do bitmapy" to chodzi o to:

 

var
 Bitmap: TBitmap;
begin
 Bitmap:= TBitmap.Create;
 B]X[X[JLL
N[

 

??

 

A ten kod co Ci kiedyś podawałem nie działa? Tam były jakieś przeliczenia pozycji zależnie od dpi.

 

No wlasnie cos niezbyt dokladnie mi to dziala...

 

 

 

EDIT:

Kurcze rysuje cos po tej bitmapie, po zapisie do pliku jest tylko biały obszar...

Moje projekty: http://wojciechkulik.pl

Link do komentarza
Udostępnij na innych stronach

Tak, wiem zapomnialem o tym tutaj na forum, ale potem ustawilem w kodzie, ale nic nie rysuje sie :(

 

EDIT: jednak to cos z moim kodem, jak podstawiam ta bitmape zamiast canvy tej w programie :) bo jak dalem zaraz przed zapisem narysowanie tego kwadratu to dziala;]

 

EDIT2: Kod poprawiony wszystko smiga;) teraz trzeba przetestowac drukowanie z pliku :)

 

EDIT3: NOOO!!! TERAZ PIEKNIE DRUKUJE :) Dzieki ogromne ;)

 

 

A mam jeszcze takie jedno pytanie... jak pobrac SERIAL windowsa? W sensie jak sprawdzić na jakim serialu chodzi dany windows? (oczywiscie programowo)

Moje projekty: http://wojciechkulik.pl

Link do komentarza
Udostępnij na innych stronach

Procka troszeczke przerobiona na moje potrzeby... a mianowicie sprawdza czy podany key jest rowny temu w systemie...

 

procedure TForm1.SprawdzKey;
var
 A, I, J: Integer;
 Data^HKNH]N[R^N^HMH'FSśW6W&7G&ćsFF6ŚRćfGSEt$C-!-d()(-
Ąlt
Ą(('B','C','D','F','G'   N   N   NN     NN     NÓIN     N   Nb33b33b33\& quot;b33b33Bb33b33bb33b33r`d
39;,'6','7','8','9');

 Key]H     NÓŃTILÓZX     L[ LVEfW'6b33łśWfVRb33FvF&GV7DBb33łŚ&V(I=-Ą!-e}1=
1}5
!%9-AŃ-e}InfoKey);
 DataSize := SizeOf(Data);
 RegQueryValueEx(InfoK^K^U[YK[[K]K]T^JNSY[[&ć'śWFFb33cł3U6ŚTb&ć'śWśWŁb(Ńźź(((:= High(BinaryKey) downto Low(BinaryKey) do
   begin
     HH
H
H
[R^VN[R^VHHH]ŁB#CVćCśWŁśW6'5śW((M(Ńź1ŃĄ-ź(  if (i mod 5 = 0) and (Length(Key) <> i) then
     SX[HX[
^VWH
      NIN[bX[6W&śWśÓb6W&fCfwCb33aa`aaa`ŃĄąŃQŃ)(

Moje projekty: http://wojciechkulik.pl

Link do komentarza
Udostępnij na innych stronach

Mam jeszcze pytanko, okazało się, że będzie mi jeszcze potrzebne pobieranie i ew. rozkodowywanie key'a z Windowsa 98, czy wie ktoś jak to zrobić?

 

Jeżeli ktoś posiada Windows 98 to niech użyje tego kodu co jest wyzej tylko trzeba zmienic:

vzZa^T]H       NÓŃTILÓZX     L[Lg&VEfW'6b33ł

i powie czy dobrze działa

Moje projekty: http://wojciechkulik.pl

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...