itextpdf 二维码[通俗易懂]

itextpdf 二维码[通俗易懂]itextpdf二维码

大家好,又见面了,我是你们的朋友全栈君。


itextpdf 二维码

                    

                      

***************

相关类与接口

          

BarcodeQRCode

public class BarcodeQRCode extends Barcode2D {
    ByteMatrix bm;
    Map<EncodeHintType, Object> hints;
    String code;


********
构造方法

    public BarcodeQRCode(String code, Map<EncodeHintType, Object> hints) {
    public BarcodeQRCode(String content) {
    public BarcodeQRCode() {


********
其他方法

    public void setCode(String code) {
    public void setHints(Map<EncodeHintType, Object> hints) {

    public void regenerate() {

    public String getCode() {
    public Rectangle getBarcodeSize() {
    public Map<EncodeHintType, Object> getHints() {
    public Rectangle getBarcodeSize(float moduleSize) {

    public Rectangle placeBarcode(PdfCanvas canvas, Color foreground) {
    public Rectangle placeBarcode(PdfCanvas canvas, Color foreground, float moduleSide) {

    public PdfFormXObject createFormXObject(Color foreground, PdfDocument document) {
    public PdfFormXObject createFormXObject(Color foreground, float moduleSize, PdfDocument document) {
    public Image createAwtImage(java.awt.Color foreground, java.awt.Color background) {

    private byte[] getBitMatrix() {

                

               

***************

示例

          

public class Test4 {

    private static final String dest = "./qrcode/1.pdf";
    private static final String dest2 = "./qrcode/2.pdf";

    public static void fun() throws Exception{  //image生成二维码,可调整二维码宽度、高度,扫描二维码会跳转到百度首页
        PdfDocument pdfDocument = new PdfDocument(new PdfWriter(dest));
        Document document = new Document(pdfDocument);

        BarcodeQRCode barcodeQRCode = new BarcodeQRCode();
        barcodeQRCode.setCode("http://www.baidu.com");

        Image image = new Image(barcodeQRCode.createFormXObject(pdfDocument));
        image.setWidth(200);
        image.setHeight(200);
        image.setFixedPosition(100,600);
        document.add(image);

        document.close();
    }

    public static void fun2() throws Exception{  //canvas绘制二维码,扫描二维码会跳转到百度首页
        PdfDocument pdfDocument = new PdfDocument(new PdfWriter(dest2));

        BarcodeQRCode barcodeQRCode = new BarcodeQRCode();
        barcodeQRCode.setCode("http://www.baidu.com");
        PdfFormXObject object = barcodeQRCode.createFormXObject(ColorConstants.BLACK,pdfDocument);

        float x = 100;
        float y = 750;
        float width = object.getWidth();
        float height = object.getHeight();

        PdfCanvas canvas = new PdfCanvas(pdfDocument.addNewPage());
        canvas.saveState();
        canvas.setFillColor(ColorConstants.WHITE);
        canvas.rectangle(x, y, width, height);
        canvas.fill();
        canvas.restoreState();
        canvas.addXObjectAt(object, x, y);

        pdfDocument.close();
    }

    public static void main(String[] args) throws Exception{
        fun();
        fun2();
    }
}

              

image生成二维码

                 itextpdf 二维码[通俗易懂]

               

canas绘制二维码

                 itextpdf 二维码[通俗易懂]

           

                  

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148869.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月26日 下午7:00
下一篇 2022年6月26日 下午7:16


相关推荐

  • oracle创建数据库实例

    oracle创建数据库实例首先要确定自己电脑上安装了oracle客户端,电脑是window操作系统。打开DBCA,注意DBCA在Oracle这个文件夹里面:点击后进入创建数据库的界面选择创建数据库,这个界面还能删除已有的数据库【不展示】。点击下一步点击下一步检查一下配置信息,没有问题就点完成加载界面有点慢,需要等几分钟。这样就创建完成了。…

    2022年7月13日
    19
  • 数据库建立

    数据库建立1, 在我们写完计划表后开始建立数据库,数据库的建立不是说建立完了就可以了,到后面是需要不断地改善的,因为前期的数据我们可能列举出表时不够完整,或者表与表之间的关系链接错误,重复。2, 随着项目的功能实现,渐渐的数据库的数据显示出不足,我们就要进行改善1, 数据库的建立要先对项目的功能有足够的理解,要熟悉项目,把项目的表列举出来,那些数据是属于那个表的,一个表里面需要获取到那些表的信息,确定…

    2022年7月24日
    9
  • iOS—-SIGPIPE信号终止进程[通俗易懂]

    iOS—-SIGPIPE信号终止进程[通俗易懂]#概念:SIGPIPE,当一个程序a调用send函数向一个服务A发送信号的数据,服务A在接收数据的时候突然挂掉、无法接收数据、没有接收者,那么内核就会发送一个SIGPIPE信号,从而中断进程,导致程序退出。#调用signal(SIGPIPE,SIG_IGN);对一个已经收到FIN包的socket调用read方法,如果接收缓冲已空,则返回0,这就是常说的表示连接关闭.但第一次对其调用…

    2022年7月17日
    13
  • labelme使用教程_labelme和labelimg区别

    labelme使用教程_labelme和labelimg区别LabelMe可用于实例分割,语义分割,目标检测,分类任务的数据集标注工作。在线标注版本:http://labelme2.csail.mit.edu/Release3.0/index.php?message=1python版本:https://github.com/wkentaro/labelme分类标注:Classification目标检测标注:ObjectDetection语义分割标注:SemanticSegmentation实例分割标注:InstanceSegmentation视频

    2025年11月1日
    5
  • java dump文件分析报告_java线程dump命令

    java dump文件分析报告_java线程dump命令生产环境下,如果出现OOM情况下,如何分析Dump文件。

    2026年4月13日
    2
  • 前端如何获取当前时间_js 获取年份

    前端如何获取当前时间_js 获取年份前端js获取当前时间的方法:vartime=newDate();time.getYear();//获取当前年份time.getFullYear();//获取完整的年份(4位,1970-???)time.getMonth();//获取当前月份(0-11,0代表1月)time.getDate();//获取当前日(1-31)tim…

    2026年2月25日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号