Uygulamamda barkod yazdırma modülüne ihtiyacım var ancak barkodların nasıl düzgün yazdırılacağını anlayamıyorum. Çözünürlük çok düşük gibi görünüyor. Zen Barcode kullanıyorum. Ekli fotoğraf başına görebileceğiniz gibi, üst barkod yazıcı tamam kanıtlayan, yazıcının yazılımından basılır, alt resim benim kodundan yazdırılır:Yazdırılan barkod açık değil (WPF)
[WPF]
<Grid x:Name="_printSerialBcode" Margin="9" Visibility="Visible">
<Image x:Name="serial_bcode1" Height="20" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="2"/>
</Grid>
[C#]
private void printJob()
{
// use printer we need
SetDefaultPrinter("Brother QL-700");
//draw barcodes
BarcodeDraw bc = BarcodeDrawFactory.Code128WithChecksum;
Bitmap serial_bitmap = (Bitmap)bc.Draw(serial, 20);
ImageConverter ic = new ImageConverter();
//generate bitmap
serial_bcode1.Source = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(serial_bitmap.GetHbitmap(), IntPtr.Zero, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions());
var dlg = new PrintDialog();
//print main label
dlg.PrintTicket.CopyCount = 1; // number of copies
dlg.PrintTicket.PageOrientation = PageOrientation.Landscape;
dlg.PrintVisual(_printSerialBcode, "Barcode");
//change default printer to original one
SetDefaultPrinter(defaultPrinter);
}
Don tarafından tavsiye edildiği
'SnapToDevicePixels''i herhangi bir yere mi yerleştiriyorsunuz? –
fark yok. Resimde de kullanıyorum, aynı zamanda ızgarada da denedim – arti
Barkodun gerçek boyutuna 'Int32Rect.Empty' yerine 'CreateBitmapSourceFromHBitmap' yazmayı denediniz mi? –