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)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 如何学习Android系统源码

    如何学习Android系统源码参考资料Android系统的源代码非常庞大和复杂,我们不能贸然进入,否则很容易在里面迷入方向,进而失去研究它的信心。我们应该在分析它的源代码之前学习好一些理论知识,下面就介绍一些与Android系统相关的资料。我们知道,Android系统是基于Linux内核来开发的,在分析它在运行时库层的源代码时,我们会经常碰到诸如管道(pipe)、套接字(socket)和虚拟文件系统(VFS)等

    2022年5月3日
  • goland2021 激活码[在线序列号]「建议收藏」

    goland2021 激活码[在线序列号],https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
  • UFT VB脚本

    UFT VB脚本UFTVB脚本分类: 自动化2015-07-1323:48 49人阅读 评论(0) 收藏 举报OnErrorResumeNext REMMsgbox(Err.Number)REMMsgbox(Err.Source)REMMsgbox(Err.Description)REM###############################

    2022年5月28日
  • 1数字电路设计流程与SOC芯片架构图

    1数字电路设计流程与SOC芯片架构图ASIC和SOC设计的流程相近。ASIC主要是在PC端,现在SOC是主流。一、需求分析产品要解决什么问题,预测未来3-5年的走势和趋向,确保芯片是有卖点和前瞻性,面向未来。客户向fabless提出设计要求,包括芯片需要达到的具体功能和性能方面的要求。需求分析后生成文档,性能指标,需求展望spec,让架构师可以进行细化。二、功能架构设计架构师将系统功能进行分解和细化,形成spec规范,参数化、具体化。处理器的选择:ARM、RISC-V;总线接口:AHB、APB;功能模块,是否需要D..

    2022年9月6日
  • 皮肤(永久)激活码(没用过的激活码2020)

    DataGrip1.下载jar包JetbrainsCrack-3.1-release-enc.jar2.到软件安装的bin目录,把这个jar包粘贴进去image.png3.编辑文件中参数datagrip.exe.vmoptions+datagrip64.exe.v…

    2022年4月14日
  • HTML学习笔记之二(回到顶部 与 回究竟部)

    HTML学习笔记之二(回到顶部 与 回究竟部)

    2022年2月1日

发表回复

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

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