(Sumber: milist DOTNET) direct print ke mini printer
-
01 Desember 2011 2:14Moderator
salam,
mau nanya, bagaimana caranya direct print ke mini printer ya dimana driver mini printernya sudah di install di windowsnya tanpa menggunakan OPOS Driver dari vendornya.
apakah bisa menggunakan fasilitas seperti buat logo,drawer kick dan auto cutter seandainya menggunakan driver bawaan dari vendor tersebut?
sebagai informasi platform yang saya gunakan :Windows xp/7, vb2005, sql server 2000, winform, mini printer merek Epson (U220,T81V USB)
Agnes Sannie [MSFT]
MSDN Community Support | Feedback to us
Get or Request Code Sample from Microsoft
Please remember to mark the replies as answers if they help and unmark them if they provide no help.
Semua Balasan
-
01 Desember 2011 2:15Moderator
Jika menggunakan WPF, bisa menggunakan kode ini
Dengan :
· View adalah nama User Control / Windows tempat container yang akan di print
· Dan View.SP adalah nama StackPanel yang akan di print
System.Printing.PrintQueue printer = null;
if (servername != "")
printer = new System.Printing.PrintQueue(new System.Printing.PrintServer(servername), printername);
else
printer = new System.Printing.PrintQueue(new System.Printing.PrintServer(), printername);
System.Windows.Controls.PrintDialog pd = new System.Windows.Controls.PrintDialog();
View.UpdateLayout();
PrintCapabilities capabilities = pd.PrintQueue.GetPrintCapabilities(pd.PrintTicket);
//get scale of the print wrt to screen of WPF visual
double scale = Math.Min(capabilities.PageImageableArea.ExtentWidth / View.ActualWidth,
capabilities.PageImageableArea.ExtentHeight / View.ActualHeight);
//Transform the Visual to scale
View.LayoutTransform = new System.Windows.Media.ScaleTransform(scale, scale);
//get the size of the printer page
System.Windows.Size sz = new System.Windows.Size(capabilities.PageImageableArea.ExtentWidth, capabilities.PageImageableArea.ExtentHeight);
//update the layout of the visual to the printer page size.
View.Measure(sz);
View.Arrange(new System.Windows.Rect(new System.Windows.Point(capabilities.PageImageableArea.OriginWidth, capabilities.PageImageableArea.OriginHeight), sz));
pd.PrintQueue = printer;
pd.PrintVisual(View.SP, "");
Dijawab oleh: Andri Mirandi
Agnes Sannie [MSFT]
MSDN Community Support | Feedback to us
Get or Request Code Sample from Microsoft
Please remember to mark the replies as answers if they help and unmark them if they provide no help.- Ditandai sebagai Jawaban oleh Agnes SannieMicrosoft Contingent Staff, Moderator 01 Desember 2011 2:17