2011-02-10 8 views
2

私のコードは、実際に何かを印刷するのではなく、.xpsファイルを保存するsaveFileDialogを生成します。私のコードに何か問題がありますか?そうでない場合は、このコードを動作させるためにマシンを構成するにはどうすればよいですか?My PrintメソッドはXPSファイルを保存しますが、印刷しませんか?

class Printer { 
    public Printer() { 
    } 

    private void PrintDocument_PrintPage(Object sender, PrintPageEventArgs e) { 
     Font printFont = new Font("Courier New", 12); 
     e.Graphics.DrawString(StringToPrint, printFont, Brushes.Black, 0, 0); 
    } 

    private PrintDocument pd = new PrintDocument(); 
    private string StringToPrint; 

    public void PrintString(string input) { 
     pd.PrintPage += new PrintPageEventHandler(PrintDocument_PrintPage); 
     StringToPrint = input; 
     pd.Print(); 
    } 
} 

コード:

Printer Printer = new Printer(); 
Printer.PrintString("Hello world"); 

答えて

4

それはあなたの "Microsoft XPSドキュメントライター" プリンタがデフォルトのプリンタとして設定されていることでなければなりません。

+0

それは...と私はコードの問題があると思った。 – sooprise

+0

デフォルト以外のプリンタを使用する場合は、プリンタを指定することもできます。私はこれを数年前にpdfプリンタに印刷する必要がありました – Fry

関連する問題