2017-07-04 12 views
0

Ich versuche, Rezept-Anwendung zu erstellen. Hier ist ein BeispielDrucken Dokument unsichtbar

ich Textfelder bin mit alle Felder ausfüllen, und nachdem ich alle Felder ausfüllen Ich drucke sie mit diesem Code

private void button1_Click(object sender, EventArgs e) 
{ 
    PrintDialog pd = new PrintDialog(); 
    PrintDocument doc = new PrintDocument(); 
    doc.PrintPage += PrintPage; 
    pd.Document = doc; 
    if (pd.ShowDialog() == DialogResult.OK) 
     doc.Print(); 
} 

private void PrintPage(object sender, PrintPageEventArgs e) 
{ 
    Font myfont = new Font("Arial", 12); 
    e.Graphics.DrawImage(pictureBox1.BackgroundImage, 0, 0); 
    e.Graphics.DrawString(textBox1.Text, myfont, Brushes.Black, 157, 164); 
    e.Graphics.DrawImage(pictureBox1.Image, 0, 0); 
    e.Graphics.Dispose(); 
} 

Mein Problem ist, nachdem ich Datei als PDF speichern wenn ich es geöffnet habe, kann ich nur den Text für 1 Sekunde sehen und dann verschwindet es und wenn ich an der Stelle doppelklicke, wo Text sein soll, kann ich den Text von dort kopieren ...

Ich habe gedacht, vielleicht ist es etwas über Texttransparenz oder Bildkastentransparenz verändert wenige Eigenschaften dort und dort, aber immer noch keinen Erfolg.

Antwort

0

Nach dem Aufruf der DrawString-Methode gibt es einen weiteren Aufruf von DrawImage. Ich denke, dass das Bild über Ihre Textbox gezeichnet wird.

Versuchen Sie DrawString nach beiden DrawImage-Aufrufen aufzurufen.

+0

Nun, das war einfach, es hat funktioniert.Danke – JohnBoy19

+0

Ich habe immer noch ein Problem erste Felder die DrawString-Methode funktioniert gut, aber nach 5-6 Textfelder gefüllt Text apear abit oberen als es sollte irgendwelche Ideen? – JohnBoy19