ZedGraph i wydruk

KA
  • Rejestracja:prawie 18 lat
  • Ostatnio:prawie 12 lat
0

Witam!

Mam pytanie. Jak wydrukować wykres rysowany przy pomocy ZedGraphControl ? Proszę o jakieś wskazówki.

Pozdrawiam.

RO
  • Rejestracja:ponad 17 lat
  • Ostatnio:około 2 lata
  • Lokalizacja:Warszawa
  • Postów:75
0

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


Poszukiwanie narzędzia do tworzenia instalatora
KA
  • Rejestracja:prawie 18 lat
  • Ostatnio:prawie 12 lat
0

Tak bardzo bym prosił o bliższe informacje na temat drukowania. Serdecznie dziękuję.

RO
  • Rejestracja:ponad 17 lat
  • Ostatnio:około 2 lata
  • Lokalizacja:Warszawa
  • Postów:75
0

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ł

Kopiuj
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)

Kopiuj
 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


Poszukiwanie narzędzia do tworzenia instalatora

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.