Quantcast
Channel: SQL Server Reporting Services
Viewing all articles
Browse latest Browse all 1418

Printed page size error

$
0
0

I have been using rdlc reports in vs 2013 for generating barcode labels along with some other info.

The PDF that gets generated is of correct dimensions that is (2.5cm x 1.7 cm) but when the print occurs the print is centralized and occupies just a short area of what seems to be an a4 size paper. I have tested in brother p-touch printer as well but its the same issue.  I am using neodynamic webclientprint.

            DataSet3 fd = new DataSet3();
            DataSet3TableAdapters.Inventory_DetailTableAdapter dds = new DataSet3TableAdapters.Inventory_DetailTableAdapter();
            dds.Fill(fd.Inventory_Detail, "210");


            ReportDataSource ds = new ReportDataSource("DataSet3", fd.Tables[0]);

            

            //create PDF version of RDLC report
            PageSettings pageSet = new PageSettings();
            LocalReport myReport = new LocalReport();
            
            myReport.ReportPath = Server.MapPath("~/BarcodeReport.rdlc");
            myReport.DataSources.Add(ds);

            ReportPageSettings rptSet = myReport.GetDefaultPageSettings();
            pageSet.PaperSize = rptSet.PaperSize;

            //Export to PDF. Get binary content.
            string mimeType;
            string encoding;
            string fileNameExtension;
            string[] streams;
            Warning[] warnings;

            string deviceInfo = "<?xml version='1.0' encoding='UTF-8'?>" +"<DeviceInfo>" +"<OutputFormat>PDF</OutputFormat>" +"<PageWidth>2.5cm</PageWidth>" +"<PageHeight>1.8cm</PageHeight >" +"<MarginTop>0cm</MarginTop >" +"<MarginLeft>0cm</MarginLeft >" +"<MarginRight>0cm</MarginRight >" +"<MarginBottom>0cm</MarginBottom >" +"</DeviceInfo>";


            

            byte[] pdfContent = myReport.Render("PDF", deviceInfo, out mimeType, out encoding, out fileNameExtension, out streams, out warnings);

            
            //Now send this file to the client side for printing
            //IMPORTANT: Adobe Reader needs to be installed at the client side

            bool useDefaultPrinter = (Request["useDefaultPrinter"] == "checked");
            string printerName = Server.UrlDecode(Request["printerName"]);

            //create a temp file name for our PDF report...
            string fileName = Guid.NewGuid().ToString("N") + ".pdf";

            //Create a PrintFile object with the pdf report
            PrintFile file = new PrintFile(pdfContent, fileName);
            //Create a ClientPrintJob and send it back to the client!
            ClientPrintJob cpj = new ClientPrintJob();
            
            //set file to print...
            cpj.PrintFile = file;
            
            //set client printer...
            if (useDefaultPrinter || printerName == "null")
                cpj.ClientPrinter = new DefaultPrinter();
            else
                cpj.ClientPrinter = new InstalledPrinter(printerName);
            //send it...
            cpj.SendToClient(Response);




Viewing all articles
Browse latest Browse all 1418

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>