Witam!
Mam pytanie. Jak wydrukować wykres rysowany przy pomocy ZedGraphControl ? Proszę o jakieś wskazówki.
Pozdrawiam.
Ja robiłem to pod VB .net mam nadzieje że to co napisze będzie pomocne:
Jeśli już coś kiedyś drukowałeś to wystarczy ci ja podam:
e.Graphics.DrawImage(Wykres.MasterPane.GetImage(), X, Y, szerokość, wysokość)
dla wersji 5 biblioteki
natomiast dla starszych zamiast GetImage() jest ScaledImage() z odpowiednimi parametrami
X,Y - położeni górnego lewego narożnika
szerokość, wysokość - drukowanego obrazka
Jeśli nic wcześniej nie drukowałeś to napisz - to napisze coś więcej na temat drukowania
Najprościej jest drukować w następujący sposób.
Wrzucasz na formatkę PrintDialog (np. PrintDialog1) i Button (Button1) następnie dopisujesz kod.
Wykres ZedGrapha nazywasz "Wykres"
Następnie do zdarzenia on Click dla "Button1" piszesz kod
PrintDocument1.Print()
i będziesz miał
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
PrintDocument1.Print()
End Sub
a następnie do zdarzenia PrintPage dla PrintDialog1 dopisujesz (to co napisałem w pierwszym poście)
e.Graphics.DrawImage(Wykres.MasterPane.GetImage(), X, Y, szerokość, wysokość)
i masz (np. - podałem przykładowe wartości parametrów)
Public Sub PrintDocument1_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
e.Graphics.DrawImage(Wykres.MasterPane.PaneList(0).GetImage(), e.MarginBounds.Left, e.MarginBounds.Top, e.MarginBounds.Width, 500)
End Sub
e.MarginBounds - przechowuje dane związane między innymi z ustawieniami marginesów
Jeśli napiszeż taki kod jak na górze to dostaniesz maksymalnie szeroki wykres o wysokości 500
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.