(相关)我发现here,here和here是描述ZXingBarcodeImageView以Xamarin Forms渲染模糊QR码的相关问题的问题。 -但是它们并不能解决我的问题。
我正在使用ZXing来绘制和显示Xamarin形式的QR码,但是它产生的QR码却模糊不清。
原因是在.xaml
页面中,我正在设置ZXingBarcodeImageView属性WidthRequest=300
和HeightRequest=300
。这是在ZXing库绘制QR代码后对其进行拉伸:
<forms:ZXingBarcodeImageView
IsVisible="True"
x:Name="QRCodeView"
BarcodeFormat="QR_CODE"
HeightRequest="300" //Stretching Height
WidthRequest="300" //Stretching Width
BarcodeValue="-1"
/>
This问题的最高答案建议提前绑定属性Height
和Width
,但是无论我如何更改建议的BarcodeOptions
数组中的参数,QR代码保持不变。
如何在绘制时间之前更改ZXingBarcodeImageView的设置尺寸以避免拉伸?
答案 0 :(得分:4)
在我的情况下,在XAML中将BarcodeOptions
添加到ZXingBarcodeImageView
似乎是可行的。正如您所链接的解决方案之一所建议的那样,从代码进行绑定时,由于某些原因,该操作不起作用。
<ContentPage .... xmlns:zxcm="clr-namespace:ZXing.Common;assembly=zxing.portable">
<forms:ZXingBarcodeImageView
IsVisible="True"
x:Name="QRCodeView"
BarcodeFormat="QR_CODE"
HeightRequest="300"
WidthRequest="300"
BarcodeValue="-1">
<zx:ZXingBarcodeImageView.BarcodeOptions>
<zxcm:EncodingOptions Width="300" Height="300" />
</zx:ZXingBarcodeImageView.BarcodeOptions>
</forms:ZXingBarcodeImageView>
</ContentPage>
可以在此处找到示例项目:https://github.com/jfversluis/Blurry-ZXingBarcodeImageView