محمد بوسكوري نشر 31 مايو 2016 أرسل تقرير نشر 31 مايو 2016 لدي تطبيق لمحل حلويات على لغة Java، وأريد طباعة فواتير order مثل المرفقة في الصورة: الطابعة من النوع الحراري. كيف ذلك؟ 1 اقتباس
2 خليل الأمين نشر 31 مايو 2016 أرسل تقرير نشر 31 مايو 2016 قمت ببرمجة برنامج صغير للطباعة للطابعات الحرارية لمطعم، فكرة البرنامج ببساطة أن المطعم يشتغل بمنظومة Openbravo POS تقوم المنظومة بطباعة إيصال الطلبية كاملة وهذا يعطى للزبون، صاحب المطعم يريد أيضا أن يتم طباعة كل طلبية من مجموعة من الأكل على حده وتعطى للطباخين، فقمت ببرمجة البرنامج ليطبع إيصالات الطلبيات هذه، طبعا هو يحتاج لتعديل منك ليتلائم معك، ولتشغيله ضع الملف في مشروعك مع ملفات الجافا الأخرى وفي الدالة main ضع السطرين التاليين لتتم الطباعة: Print printer = new Print(); printer.print(); البرنامج يجلب البيانات من mysql عليك تعديله وربما لا تحتاج قاعدة بيانات، المهم أن البيانات التي سيتم طباعتها هي مخزنة في مصفوفة نصية String[] أتمنى أن أكون أفدتك Print.java 1 اقتباس
0 E.Nourddine نشر 31 مايو 2016 أرسل تقرير نشر 31 مايو 2016 من الأشياء التي يجهلها البعض أن هذه الطابعات لا تتوفر على مداد، فهي تعتمد على تقنية الكتابة على الورقة باستخدام تقنية الحرارة، وتنتشر مثل هذه الماكينتات داخل المقاهي ومحلالت الأكلات السريعة، حيث تعطي الفاتورة محتوية المحتويات، مع إظهار المجموع في ذيل الورقة. بالاضافة إلى ما قدمه خليل، أرفق كود مصدري لتطبيق يطبع بطابعة حرارية. الكود كالتالي: public class printnow { public static void printCard(final String bill ){ final PrinterJob job = PrinterJob.getPrinterJob(); Printable contentToPrint = new Printable(){ @Override public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) throws PrinterException { Graphics2D g2d = (Graphics2D) graphics; g2d.translate(pageFormat.getImageableX(), pageFormat.getImageableY()); g2d.setFont(new Font("Monospaced", Font.BOLD, 7)); if (pageIndex >0){return NO_SUCH_PAGE;} //Only one page String Bill [] = bill.split(";"); int y = 0; for (int i = 0; i < Bill.length; i++) { g2d.drawString(Bill[i], 0, y); y = y + 15; } return PAGE_EXISTS; } }; PageFormat pageFormat = new PageFormat(); pageFormat.setOrientation(PageFormat.PORTRAIT); Paper pPaper = pageFormat.getPaper(); pPaper.setImageableArea(0, 0, pPaper.getWidth() , pPaper.getHeight() -2); pageFormat.setPaper(pPaper); job.setPrintable(contentToPrint, pageFormat); try { job.print(); } catch (PrinterException e) { System.err.println(e.getMessage()); } } } الكود من شأنه أن يطبع ورقة واحدة فقط، ويبقى لك مهمة تغيير المحتوى المطبوع حسب الحاجة. Printsupport Java Printing reciepts with thermal printer in java Printing example with Java 1 اقتباس
السؤال
محمد بوسكوري
لدي تطبيق لمحل حلويات على لغة Java، وأريد طباعة فواتير order مثل المرفقة في الصورة:
الطابعة من النوع الحراري.
كيف ذلك؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.