px普贤教程PuXian
普贤教程 › 包参考

qrcode 包

QR 码生成

项值
包名qrcode
版本0.2.0
可用版本0.1.0 / 0.2.0
入口qrcode.px
分类图形与媒体
文件数 / 行数4 / 1625

安装与引入

bash
pxpkg init          # 首次
pxpkg add qrcode@0.2.0
pxpkg install
px
import qrcode
所属分类教程:图形与媒体

公开接口

函数参数
qrcode_encodes, ec
qrcode_encode_ats, ec, v, mask
qrcode_asciimatrix
qrcode_pbmmatrix, quiet
qrcode_versionmatrix
qrcode_decodematrix
qrcode_svgmatrix, scale, margin
其余 74 个 def(内部与辅助,可直接调用但不属稳定接口)
函数参数
qr_bits_appendbuf, value, nbits
qr_bits_to_bytesbuf
qr_cci_lenv, mode
qr_cci_len_bytev
qr_choose_modes
qr_encode_datas, mode, buf
qr_alnum_valc
qr_data_bits_lens, mode
qr_fitsv, ec, mode, s
qr_choose_versionec, mode, s
qr_build_codewordss, v, ec, mode
qr_make_blocksdata_cw, v, ec
qr_blocks_eccv, ec
qr_interleaveblocks
qr_new_matrixv
qr_draw_finderm, func, top, left
qr_draw_timingm, func
qr_draw_alignmentm, func, v
qr_reserve_formatm, func, v
qr_reserve_versionfunc, v
qr_draw_functionv
qr_bch_remvalue, poly, degree
qr_format_bitsec, mask
qr_version_bitsv
qr_draw_formatm, v, bits15
qr_draw_versionm, v
qr_place_datam, func, bits
qr_mask_condmask, r, c
qr_apply_maskm, func, mask
qr_penalty_n1m
qr_penalty_n2m
qr_penalty_n3m
qr_penalty_n4m
qr_penaltym
qr_encode_builds, ec, fixed_version, fixed_mask
qr_copy_matrixm
qr_read_fmt_am
qr_read_fmt_bm, v
qr_popcountx
qr_decode_formatm, v
qr_unmaskm, func, mask
qr_read_data_bitsm, func
qr_bits_from_listbits, nbytes
qr_deinterleaveseq, v, ec
qr_recover_datacodewords, v, ec
qr_byte_hexb
qr_parse_datadata, v
qr_decode_matrixmatrix
gf_tables
gf_mula, b
gf_powa, n
rs_generatordegree
rs_encodedata, degree
list_copylst
gf_inva
gf_poly_evalpoly, x
gf_poly_mula, b
gf_poly_derivativepoly
rs_syndromesmsg, nsym
rs_berlekamp_masseysynd
gf_poly_eval_ascpoly, x
rs_find_error_positionserr_loc
rs_error_magnitudeserr_loc, synd, err_pos
rs_correctmsg, nsym
qr_ec_bitsec
qr_sizeversion
qr_parse_groupsv, ec
qr_data_countv, ec
qr_format_codeec, mask
qr_check_ecec
qrcode_encode_autos, ec="M"
qrcode_matrix_sizematrix
qrcode_module_atmatrix, row, col
qrcode_count_blackmatrix

包内说明(源码头注释)

text
============================================================
普贤生态库:registry/qrcode —— QR 码生成
------------------------------------------------------------
纯函数库(无 IO、无状态),编译(px build)与解释(px run)双模式一致。
qrcode_encode(s, ec)       → Ok([version, mask, matrix]) | Err   自动选版本+最优掩码
qrcode_encode_at(s, ec, v, mask) → Ok([version, mask, matrix]) | Err  固定版本/掩码(测试与精确控制)
qrcode_decode(matrix)      → Ok(str) | Err   解码(RS 纠错自动修正 ≤ 容量一半错误码字)
qrcode_ascii(matrix)       → str   "██"/"  " 终端渲染(含 4 模块静区)
qrcode_svg(matrix, scale, margin) → str   SVG 矢量(默认 scale=4, margin=4;XML 合法可内联)
qrcode_pbm(matrix, quiet)  → str   PBM 位图(P1;quiet 为静区模块数,默认 4)
qrcode_version(matrix)     → int   矩阵边长对应的版本
矩阵表示:[[bool...]](行×列,true=深色);模式自动 numeric/alnum/byte
(UTF-8 字节);内容超出 v1-10 容量 → Err。
实现:qr_core.px(编码/交织/放置/掩码 + 解码/解除交织/去掩码)+ qr_gf.px
(Reed-Solomon 编码 + 译码:Syndrome→BM→Chien→Forney)+ qr_table.px
(容量/格式表,与 Python segno 同源);全矩阵可与 segno 对拍(encode/decode 双向)。
============================================================