tôi sử dụng ZXing.Net thư viện để tạo ra một hình ảnh mã QR -Thêm hình ảnh tùy chỉnh hoặc văn bản để mã QR được tạo ra bởi ZXing.Net
Ở phía trên cùng của lớp học của tôi:
[System.Runtime.InteropServices.DllImport("gdi32.dll")]
public static extern bool DeleteObject(IntPtr hObject);
Phương pháp của tôi:
protected void UpdateQRSource(String address)
{
QRCodeWriter qrcode = new QRCodeWriter();
BarcodeWriter barcodeWriter = new BarcodeWriter
{
Format = BarcodeFormat.QR_CODE,
Options = new EncodingOptions
{
Width = 300,
Height = 300,
Margin = 4
}
};
using (Bitmap bitmap = barcodeWriter.Write(address))
{
IntPtr hbmp = bitmap.GetHbitmap();
try
{
BitmapSource source = Imaging.CreateBitmapSourceFromHBitmap(
hbmp,
IntPtr.Zero,
Int32Rect.Empty,
BitmapSizeOptions.FromEmptyOptions());
qrImage.Source = source; // set WPF image source
}
finally
{
DeleteObject(hbmp);
}
}
}
Vui lòng tư vấn cho tôi cách thêm chuỗi văn bản ngắn hoặc lệnh lưu giữ hình ảnh m ở giữa của mã QR - tương tự như Wikipedia visual QR code dưới đây:
UPDATE:
Nhúng biểu tượng tùy chỉnh trong mã QR có vẻ là không (mà không vi phạm sau này!) một tác vụ tầm thường như ấn phẩm khoa học QR Images: Optimized Image Embedding in QR Codes cho thấy ...
Nhưng tôi vẫn tự hỏi liệu tôi có thể tạo mã QR (như trong mã nguồn ở trên) hay không, sau đó phủ nó bằng văn bản hoặc biểu tượng tùy chỉnh hình ảnh một lần nữa bởi ZXing .Mạng lưới.
Tôi không biết libs nhưng đây không phải là văn bản, đây là một hình ảnh, bạn nên xem xét theo hướng này –
Vâng, chắc chắn trận chung kết đầu ra là một hình ảnh - nhưng tôi sau bất kỳ phương pháp nào trong thư viện ZXing để thêm văn bản hoặc hình ảnh tùy chỉnh bên trong QR được tạo. Ngoài ra, tôi không thể chỉ đặt hình ảnh lên trên QR và sau đó hy vọng nó vẫn có thể đọc được nhờ sửa lỗi (như một số blog đề xuất) - vì QR của tôi được tạo động và chứa (biến) địa chỉ Bluetooth + nhiều thứ khác. –
Những gì tôi có nghĩa là không có phương pháp để thêm văn bản, chỉ có một phương pháp để thêm hình ảnh trong qrcode của bạn, như wikipedia đặt logo wikipedia và không phải là văn bản 'wikipedia' –