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


相关推荐

  • 手机分辨率介绍_手机分辨率通俗讲解

    手机分辨率介绍_手机分辨率通俗讲解分辨率(resolution,港台称之为解释度)就是屏幕图像的精密度,是指显示器所能显示的像素的多少。由于屏幕上的点、线和面都是由像素组成的,显示器可显示的像素越多,画面就越精细,同样的屏幕区域内能显示的信息也越多,所以分辨率是个非常重要的性能指标之一。可以把整个图像想象成是一个

    2022年8月13日
    3
  • goland 激活3月最新在线激活

    goland 激活3月最新在线激活,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日
    45
  • lambda表达式用法_使用lambda表达式定义函数

    lambda表达式用法_使用lambda表达式定义函数(一)输入参数在Lambda表达式中,输入参数是Lambda运算符的左边部分。它包含参数的数量可以为0、1或者多个。只有当输入参数为1时,Lambda表达式左边的一对小括弧才可以省略。输入参数的数量大于或者等于2时,Lambda表达式左边的一对小括弧中的多个参数质检使用逗号(,)分割。示例1下面创建一个Lambda表达式,它的输入参数的数量为0.该表达式将显示“ThisisaLambdae…

    2022年9月19日
    0
  • 2021-08-16 WPF控件专题 WrapPanel 控件详解

    2021-08-16 WPF控件专题 WrapPanel 控件详解1.WrapPanel控件介绍流面板子元素按顺序排列,如果按水平方向:从左到右,超出部分,自动换行到下一行垂直从上到下,下一列排列方向:OrientationItemWidthItemHeight调整面板的尺寸时,内部子元素的布局–自动调整弥补StackPanel的不足StackPanel与WrapPanel结合使用2.具体案例<BorderBorderBrush=”Red”BorderT.

    2022年7月23日
    12
  • 如何关闭ESLint,一次成功

    如何关闭ESLint,一次成功ESLint可以用来识别ECMAScript,并且按照规则给出报告的代码检测工具,使用它可以避免低级错误和统一代码的风格。但是有时候新手会被ESLint的报错阻止程序的运行,这时候我们就想关闭这个ESLint了。vue项目中关闭ESLint方法:找到build文件夹—>webpack.base.conf.js—->module然后重启服务,npmrundev就可以…

    2022年5月5日
    243
  • Web之真假分页

    Web之真假分页

    2021年11月16日
    59

发表回复

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

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