public void print_bill()
    {
        pY_offset =-5;
        try{
            String strLine;
            FileInputStream in = new FileInputStream("Printer\\Printer_bill");
            int items_num =1;
            try (BufferedReader bufffile = new BufferedReader(new InputStreamReader(in, "UTF8"))) 
            {
                strLine = bufffile.readLine();
                while (strLine != null)   {
                    System.out.println("line:" + items_num + ", contents:" + strLine);
                    switch (strLine.substring(0, 3)) {
                        case "---":
                            pY_offset += 8;
                            gHoa_don.drawString(strLine, pX_align, pY_offset);
                            break;
                        case "--+":
                            pY_offset += 14;
                            print_items_row(strLine.substring(3), items_num++);
                            break;
                        case "==>":
                            pY_offset += 14;
                            print_money_row(strLine.substring(3));
                            System.out.println("Finish: print_money_row");
                            break;
                        case "==-":
                            pY_offset +=14;
                            print_old_money(strLine.substring(3));
                            System.out.println("Finish: print_old_money");
                            break;
                        default :
                            pY_offset += 14;
                            gHoa_don.drawString(strLine,pX_align,pY_offset);
                            break;
                    }
                    strLine = bufffile.readLine();
                }
                
                //print brank
                pY_offset += 40;
                gHoa_don.drawString(".",pX_align,pY_offset);
                bufffile.close();
            }
            in.close();
        }catch (Exception e){//Catch exception if any
            System.err.println("Error: " + e.getMessage() + "[print(Graphics g, PageFormat pf, int page)]" );
        }
    }