سلام
چطوري مي شه صفحه ديتاريپورت رو به صورت افقي طراحي كرد كه خطاي
(report width is larger then the paper width) رو نده !!!
سلام
چطوري مي شه صفحه ديتاريپورت رو به صورت افقي طراحي كرد كه خطاي
(report width is larger then the paper width) رو نده !!!
سلام
مهم افقي يا عمودي بودن نيست
اين خطا وقتي داده ميشه كه عرض گزارش يعني ReportWidth + خاصيتهاي LeftMargine و RightMargine از عرض كاغذ چاپگر كه در كنترل پنل ويندوز تعريف شده، بيشتر شده باشه
براي اينكه بتونيد اينها رو حساب كنيد فرض كنيد قراره روي يك كاغذ A4 كه عرض 21 سانتي متر داره، گزارشي طراحي كنيم كه از چپ و راست 1 سانتي متر حاشيه داشته باشه يعني در كل 2 سانتي متر حاشيه و 19 سانتي متر عرض چاپ
ReportWidth = 19 * 566
LeftMargine = 1 * 566
RightMargine = 1 * 566
واحد پيشفرض اينچ هست و بنا به محاسبات انجام شده شما بايد عدد سانتي مترتون رو در 566 ضرب كنيد
اگر هم بخواهيم روي A4 بدون حاشيه چاپ كنيم مشخصات بايد اينطوري باشه
ReportWidth = 21 * 566
LeftMargine = 0
RightMargine = 0
اگر من و شما هر كدوم يك چيز ياد داشته باشيم و به هم ياد بديم، حالا هر كدوم دو تا چيز ياد داريم ! http://www.ArminaCo.com
سلام
ممنون ولي اگر تنظيمات خود پرينتر رو افقي كنيم ديگه اين پيغام داده نمي شه ولي اين تنظيمات بيرون از برنامه است و توسط هر كاربري ممكنه دستكاري بشه.
سلام
اگر افقي كنيد پيام نميده چون در اين حالت عرض چاپ شما به جاي 21 سانتي متر 29.7 سانتي متر ميشه و باعث ميشه كم نياره
راهش هموني هست كه نوشتم
ضمنا حالت كاغذ رو مي تونيد با دستور Printer.Orientation تغيير بديد كه 1 عمودي و 0 افقي ميشه
اگر من و شما هر كدوم يك چيز ياد داشته باشيم و به هم ياد بديم، حالا هر كدوم دو تا چيز ياد داريم ! http://www.ArminaCo.com