Я пытаюсь распечатать данные пользователя на смарт-карту, используя принтер смарт-карт, но в результате я получаю пустые карточки из принтера.Я застрял над этой проблемой уже один день, и в Интернете нет (находимого) ответа.
С печатью на принтере (это Datacard SP35 Plus) без использования нестандартного формата бумаги и печатного диалога.В результате получается пустая карточка.
using (PrintDocument pd = new PrintDocument())
{
pd.PrintPage += (object sender, PrintPageEventArgs e) =>
{
Image i = Image.FromFile("E:\\tmp.png");
e.Graphics.DrawImage(i, e.MarginBounds);
};
pd.Print();
}
Изображение присутствует и видно и имеет большой размер.
Кроме того, я наткнулся на сообщение, в котором говорится, что размер печатного документа долженбыть установленным
PaperSize papersize = new PaperSize("Custom", Convert.ToInt32(widthInInch * 100), Convert.ToInt32(heightInInch * 100));
pd.DefaultPageSettings.PaperSize = papersize;
pd.PrinterSettings.DefaultPageSettings.PaperSize = papersize;
Но это не привело к видимому отпечатку.
Я также попытался
e.Graphics.DrawImage(i, 0, 0);
вместо
e.Graphics.DrawImage(i, e.MarginBounds);
но не приводит к видимой печати.
widthInInch составляет 3,38, а heightInInch составляет 2,13 (размер карты CR80 по умолчанию).Это также привело к пустой карточке.
Когда я печатаю в PDF, результат виден и корректен (конечно, я не знаю пробелы).
Кто-то видит проблему или имеетсработало что-то подобное?