2011-01-28 1 views
6

Sto cercando di trovare come stampare un'immagine (come su carta) in C#. Sto cercando di mantenerlo molto semplice. Quindi nessun uso di WinForms e solo usando l'output della console.Stampa di un'immagine da un'applicazione console

Ho cercato personalmente una risposta, ma non ho potuto dare un senso a nessuno dei risultati.

risposta

5

Non è necessario necessariamente un'applicazione WinForm per la stampa. Basta usare PrintDocument e DrawImage di classe e si può fare somthing come questo:

PrintDocument pd = new PrintDocument(); 
pd.PrintPage += (thesender, ev) => { 
     ev.Graphics.DrawImage(Image.FromFile("Your Image Path"), 
     //This is to keep image in margins of the Page. 
     new PointF(ev.MarginBounds.Left,ev.MarginBounds.Top)); 
    }; 
pd.Print(); 

Speranza che aiuta. (Ho usato Lambada e il delegato anonimo per gestire l'evento, io non capisco che, per favore, dica che pubblicherò la versione normale)

1

Non è semplice come inviare il flusso di byte dell'immagine a una libreria di stampa C#? proprio come si dovrebbe stampare qualsiasi altro documento, come direbbe un PDF, che in realtà è una raccolta di immagini. E le impostazioni di dire allineamento, layout, B/N o colore saranno quindi specifiche della stampante.