0

我想根据高度和宽度调整生成的 QR 图像的大小。我该怎么做?

我的代码如下:

MessagingToolkit.QRCode.Codec.QRCodeEncoder qe = new MessagingToolkit.QRCode.Codec.QRCodeEncoder();
qe.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
qe.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.L;
qe.QRCodeVersion = qrlevel;
System.Drawing.Bitmap bm = qe.Encode(Data_TO_Encode);

预先感谢。

4

1 回答 1

0

不是很熟悉,MessagingToolkit但你总是可以调整Bitmap.

使用以下内容并添加您自己的heightand weight

Bitmap bm = new Bitmap((Image)qe.Encode(Data_TO_Encode), new Size(width, height));

但是对于不同级别的某些尺寸,建议使用 QR 码。通常不需要增加大小。并且在调整大小时,Bitmap可能会引入一些可能破坏 QR 数据的伪影。但如果你真的需要调整它的大小并且你不关心可能的损坏,这是一个选择。

更新

您还可以提高级别并提供更多数据,但它仍然可以工作并且会更大。除此之外,我不知道是否有任何其他功能MessagingToolkit可以帮助解决这个问题,但我也不知道是否应该有。以默认/推荐大小导出。最坏的情况是将其加载到图形程序中并在其中调整大小,不使用插值,这将保持所需的锐利边缘。或者您可以查找可以应用于的缩放算法Bitmap(我认为最近的邻居是您可以使用的算法。)

但这对于这一点来说有点矫枉过正。除非非常需要调整大小的图像,否则我会留下它。

于 2013-10-02T09:43:57.017 回答