//! QRGen 自定义配置:强制指定版本、模块大小 //! //! 运行: `cargo run --example custom_config` use qr_core::qr::{QrCode, QrConfig, VersionMode}; use qr_core::version::EcLevel; fn main() -> Result<(), Box> { // 强制使用版本 10(57×57 模块) let config = QrConfig { level: EcLevel::Q, version: VersionMode::Fixed(10), margin: 4, }; let qr = QrCode::encode("固定版本 10 的 QR 码", config)?; assert_eq!(qr.version.0, 10); // 导出大尺寸 PNG(每个模块 8 像素) let png = qr.to_png_bytes(8)?; println!("版本 10 QR 码 PNG: {} 字节", png.len()); // 反转色终端输出(白底黑码 → 黑底白码) println!("\n{}", qr.to_ascii(true)); Ok(()) }