java 打印收据_如何用Java代码生成打印收据
代码如下:
PrintTest.java
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.print.Book;
import java.awt.print.PageFormat;
import java.awt.print.Paper;
import java.awt.print.Printable;
import java.awt.print.PrinterException;
import java.awt.print.PrinterJob;
import java.text.SimpleDateFormat;
import java.util.Date;
import jp.co.snjp.model.RentDetail;
import jp.co.snjp.parameter.RentRecordParameter;
public class PrintTest implements Printable
{
private String roomID;
private Date printDate;
private Integer rentType;
private Float waterFee;
private Float electricityFee;
private Float rent;
private String remark;
private static int RECEIPT_NO =0;
public PrintTest()
{
}
public PrintTest printTest;
public PrintTest(RentRecordParameter prentRecord,RentDetail prentDetail)
{
this.roomID = prentRecord.getRoomId()+"房间";
this.printDate = prentRecord.getRegisterDate();
this.rentType = prentRecord.getRentType();
this.waterFee = prentDetail.getWaterBill();
this.electricityFee = prentDetail.getElectricityBill();
this.rent = prentDetail.getRent();
this.remark = prentDetail.getRemark();
}
/** */
/**
* @param Graphic指明打印的图形环境
* @param PageFormat指明打印页格式(页面大小以点为计量单位,1点为1英才的1/72,1英寸为25.4毫米。A4纸大致为595×842点)
* @param pageIndex指明页号
**/
public int print(Graphics graphics, PageFormat pf, int pageIndex)
throws PrinterException
{
//print string
String receiptTitle = "收款收据";
String content1="今收到";
String feeItem = null;
Float rentTotal = 0f;
String content2="总计人民币(大写)";
//收款的内容(根据租赁类型,只有"房租","房租,水费,电费"两种值).
switch(this.rentType)
{
case 1:
feeItem = "房租,押金";
rentTotal=this.rent;
break;
case 2:
feeItem = "房租,押金,水费,电费";
rentTotal=this.rent+this.electricityFee+this.waterFee;
break;
default:
feeItem = "未知收费项目";
}
//转换成Graphics2D
Graphics2D graphics2D = (Graphics2D) graphics;
//设置打印颜色为黑色
graphics2D.setColor(Color.black);
//打印起点坐标x=10
double x = pf.getImageableX();
double y = pf.getImageableY();
System.out.println("打印起点坐标值是{"+x+","+y+"}。");
switch (pageIndex)
{
case 0:
//设置打印字体(字体名称、样式和点大小)(字体名称可以是物理或者逻辑名称)
//Java平台所定义的五种字体系列:Serif、SansSerif、Monospaced、Dialog 和 DialogInput
Font font = new Font("
java 打印收据_如何用Java代码生成打印收据相关推荐
- java esc的_如何用Java中的Receipt打印机和ESC / POS命令提高速度
我有一个与Java和热敏打印机通信的应用程序 使用Star tsp 100打印机使热敏打印机以条形码/强调/不同尺寸打印收据等. 我可以让程序打印出我喜欢的东西,但打印机很慢.我相信原因是我使用非优选 ...
- java 网络爬虫_如何用Java实现网络爬虫
原标题:如何用Java实现网络爬虫 微信公众号"书圈"后台回复[Javapachong1],下载本例的PPT和源码 作品描述 本章作品是一个能够抓取指定网站ACM比赛信息的爬虫.A ...
- java 判断手机号_如何用java判断手机号运营商?
如何用java实现判断手机号的运营商?因为每个号段都是工信部规定划分给指定运营商的,所以我们可以通过手机号码的号段来判断. 现在手机号的号段那么多,要怎样方便的的判断呢?于是我们就想到了正则表达式,在 ...
- java画五角星_如何用Java程序写出五角星?
展开全部 第一种,用图形 import java.awt.*; import javax.swing.*; public class WuJiaoXing extends JPanel { priva ...
- 怎么用java做日历_如何用Java制作一个简易日历
简易日历制作 记录一下Java实现的一个日历小程序,效果图如下: 实现以上的效果,我们需要用到两个类:SimpleDateFormat和Calendar. 首先看看这两个类的用法: 类 SimpleD ...
- python java 爬数据_如何用java爬虫爬取网页上的数据
当我们使用浏览器处理网页的时候,有时候是不需要浏览的,例如使用PhantomJS适用于无头浏览器,进行爬取网页数据操作.最近在进行java爬虫学习的小伙伴们有没有想过如何爬取js生成的网络页面吗?别急 ...
- java 填充字符串_如何用Java填充字符串?
素胚勾勒不出你 从Java 1.5开始,String.format()可用于左/右衬垫给定的字符串.public static String padRight(String s, int n) { r ...
- java 字符串 加密_如何用JAVA实现字符串简单加密解密?
展开全部 java加密字符串可以使用des加密算法62616964757a686964616fe4b893e5b19e31333363376462,实例如下: package test; import ...
- java编写正则表达式_如何用Java编写最快的表达式评估器之一
java编写正则表达式 当然,标题有点吸引人,但确实如此(您当然不相信自己没有伪造自己的基准,但这是另一回事了). 因此,上周我正在寻找一个小型且可用的库来评估数学表达式. 我几乎直接偶然发现了这个s ...
最新文章
- 程序员如何用Java排序
- 一文搞定C语言本地变量和全局变量
- 《深入理解Nginx》阅读与实践(四):简单的HTTP过滤模块
- uva 11714——Blind Sorting
- Linux C高级编程——文件操作之库函数
- TensorFlow精进之路(十六):使用slim模型库对图片分类
- Atitit 人工智能体系树培训列表应用较为广泛的技术.docx Atitit 人工智能体系培训列表 目录 1. 1.NLP自然语言处理文本处理	2 1.1. 语言理解 分词	2 1.2. 抽取
- 推荐一款免费还开源的数据库可视化软件(DBeaver)
- 多项式秦九韶算法c语言
- 查询给定区域内曲面平均高程
- android带方框倒计时,带倒计时提示的弹框
- [ 华为云 ] 云计算中Region、VPC、AZ 是什么,他们又是什么关系,应该如何抉择
- 使用注解失败的原因及解决方法
- 超赞的实用前端社区精选?
- php redis rpoplpush,Redis Rpoplpush 命令 - Redis 教程 - 自强学堂
- 计算机程序执行的两种方式:解释执行和编译执行
- 【区块链】数字货币-CCCX
- 富士胶片出展世界5G大会展示8K镜头等尖端产品
- 实时通信 socketio nio 总结
- 火灾自动报警门监控系统设计安装