#qrcode #generator #standard #image #content #generate #generate-image

qirust

使用标准库编写的简单QR码生成器

10个版本

0.1.9 2024年7月8日
0.1.8 2024年3月11日

#204 in 图像

每月 48 次下载

MIT 许可证

76KB
1K SLoC

qirust

crates.io

使用标准库编写的简单QR码生成器。

内容

安装

  1. 将qirust添加到您的cargo.toml
[dependencies]
qirust = "0.1.8"
  1. 然后运行cargo build命令
cargo build

用法

generate_svg_string(content)

generate_svg_string(content: &str) -> String

content参数是必需的

generate_image(content, directory, filename)

generate_image(content: &str, directory: Option<&str>, filename: Option<&str>)

content参数是必需的,directory和filename是可选的,如果您希望使用默认选项,请设置为None

generate_image("hello world", None, None);

mix_colors(pixel, foreground, background)

mix_colors(pixel: u8, foreground: u8, background: u8) -> u8

pixel、foreground和background参数是必需的

generate_image_buffer(content, border, fg_color, bg_color)

generate_image_buffer(
    content: &str,
    border: Option<i32>,
    fg_color: Option<Rgb<u8>>,
    bg_color: Option<Rgb<u8>>
) -> ImageBuffer<Rgb<u8>, Vec<u8>>

content参数是必需的,border、fg_color和bg_color是可选的,如果您希望使用默认选项,请设置为None

示例

use qirust::helper::{generate_image, generate_svg_string};

fn main() {
    generate_image("hello world", None, None); // generate_image("hello world", Some("your_image_directory"), Some("image_name"));
    generate_svg_string("hello world");
}

或者您可以使用generate_image_buffer函数自定义生成的QR码的外观。

use qirust::helper::generate_image_buffer;
use image::Rgb;

fn main() {
    let foreground_color = Rgb([255, 0, 0]); // Red foreground color
    let background_color = Rgb([0, 0, 0]); // Black background color
    let colored_image_buffer = generate_image_buffer(
        "Hello, World!",
        None,
        Some(foreground_color),
        Some(background_color)
    );

    let colored_image_path = "./colored_image.png";
    colored_image_buffer.save(colored_image_path).unwrap();
}

许可证

MIT许可证

版权所有 (c) 2024 Ashaffah

特此授予任何获得此软件及其相关文档副本(以下简称“软件”)的人免费使用软件的权利,不受任何限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本的权利,并允许向软件提供者提供软件的人这样做,前提是遵守以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于对适销性、特定用途的适用性和非侵权的保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论这些责任是基于合同、侵权或其他方式,源于、因之产生或与此软件或其使用或任何其他交易有关。

回到顶部

依赖项

~2.5MB
~52K SLoC