如何在ASP.NET和WPF中显示二维码

[原文发表地址]  How to display a QR code in ASP.NET and WPF [原文发表时间]  2014-01-19         我曾半开玩笑的表示过根本没有一个很好的理由需要使用二维码,但是最近我在和Greg Shackles 一起制作一个小型启动的最小可行产品,并且我们有充分的理由要使用二维码。因为我们要在移动设备,网站以及应用程序间传送数据,而使用二维码真是一种较快捷的方法,也避免了蓝牙配对的混乱状况。         如我所提到的,我们要在ASP.NET的网站上显示二维码,同时也在基于WPF框架实现的windows应用以及基于 Xamarin.框架,用C#实现的iphone 应用程序中也显示二维码。      “ZXing"(斑马线)是一个很好的二维码代码库,对于Java和C#都有相应的接口 。C#/.NET,ZXing.NET是个相当棒的项目程序集,它将适用于多种平台的程序集放在了一起,这些平台包括了.NET 2.0到.NET 4.5、windows RT,Unity3D、 Portable libraries 等等。这个网站有许多例子,虽然我们没有找到一个和ASP.NET或WPF相关的,但是也没关系了,它们也只是生成和显示PNG 的图片。         我从这里获得了ZXing.Net, 仅安装 ZXing.Net包就可以了。 如何在ASP.NET中展示二维码         如果你用ASP.NET MVC生成一个二维码,你将会得到这段代码运行的页面,但是接着你需要决定是否需要利用 HTTP Handler 去生成图像,就像如下方式: <img src="/path/to/httphandlerthatmakesQRcodepng">         或者你可以像我们一样用不同的方法,在HTML页面         Greg 使用HTML助手输出整个图像标签,包括内嵌的图像,如: <img src="data:image/gif;base64,iVBORw0KG…" />         我觉得图像以DataURI的方式显示在 HTML…

1

第11周NuGet包——ImageResizer让你在ASP.NET中实现干净清晰的图像大小调整

[原文发表地址]   NuGet Package of Week #11 – ImageResizer enables clean, clear image resizing in ASP.NET [原文发表时间]   2011-10-31 23:57 背景故事:既然NuGet .NET包管理网站已经开始建立了,我就想应该在那寻找一些宝贝了。否则大家无法找到真正有用的东西。我会找大多开放源项目,那些我认为有用的东西。我会看看他们是怎么建立他们的NuGet包的,其中是不是有什么很有趣的盒外设计方法(或者可以改进的东西),还有那些包可以实现什么。今天,我要说的就是ImageResizer。 Bertrand Le Roy一直倡导在.NET上正确地调整图像大小,尤其是在ASP.NET上。上周,他发表了一篇有关新库的选择方案的博文,这个库是完全的.NET风格,只需中等信任。这就是“imageresizer”。多有创意的名字啊! 说真的,这不简单。以下是Bertrand博客中的很棒的例子,展示了如何直接使用imageresizer以流字节方式来调整JPEG大小。 1: var settings = new ResizeSettings { 2: MaxWidth = thumbnailSize, 3: MaxHeight = thumbnailSize, 4: Format = "jpg" 5: }; 6: settings.Add("quality", quality.ToString()); 7: ImageBuilder.Current.Build(inStream, outStream, settings); 8: resized =…

0

第七周的NuGet 软件包——有SQL Server Compact的ELMAH(错误日志模块和处理程序)

[原文发表地址]   NuGet Package of the Week #7 – ELMAH (Error Logging Modules and Handlers) with SQL Server Compact [原文发表时间]   2011-05-23 15:03 您实施了NuGet行动计划吗?行动起来吧,它只需5分钟: NuGet行动计划——升级到1.3版本,安装自动更新,获取NuGet 软件包浏览器。NuGet 1.3已经发布了,请确认你设置了自动更新。 故事背景:我正在思考既然NuGet.Net软件包管理网站开始逐渐充实,那么我应该开始在那寻找宝石了(没有双关含义)。您知道,就是那种大家可能没有发现的真正有用的东西。我将主要寻找开放源代码项目——我认为它们很有用。我会查看它们如何生成NuGet软件包,看看它们设计开箱体验(out of the box experience)时有没有什么有趣的地方(以及任何它们可以改进的举措),当然也会关注软件包本身所做的事。 这周的本周程序包是”ELMAH 1.2 with SQL Compact.” 你可能已经使用ELMAH。现在不要停下不读了,因为你会需要这些信息的。 到现在,我已经写博客和推进ELMAH(错误日志模块和处理程序)好多年了。这是我添加到任何不管多重要的ASP.NET项目的第一个东西。它是ASP.NET开源伟大的妙处之一。 我已经在一些谈话和视频中演示过“install-package elmah”,作为我的指导演示它演示了NuGet和结构良好的OSS软件包如何让你迅速上手。最近,ELMAH团队已经开始重新调整一些软件包,我想展示一下他们的工作,以便你不仅能从中学习,而且在你自己的软件包里也能实现类似的结构。 首先,花几分钟看看ELMAH是怎样工作的,怎样加到你的ASP.NET项目。现在,让我们看看在NuGet.org上的(目前有三个,很快就会有更多)ELMAH软件包。 目前有: ELMAH Core Library (no config)-“没有任何配置的ELMAH的核心库(错误日志模块和处理程序)“, o 这个只包含程序库。如果你已经有了自定义ELMAH配置或者你想新建一个,你可以依赖并使用这个“核心”软件包。 ELMAH-“为了更快上手,ELMAH用初始配置。ELMAH (错误日志模块和处理程序) 是一种应用广泛的错误日志工具,完全可插拔。它可以被动态添加到正在运行的ASP.NET Web应用程序,甚至机器上所有的ASP.NET Web应用程序。而不需要重新编译或重新部署。” o 这个包含你需要的drop-in/just-works…

0

第一周的NuGet软件包 – ASP.NET子画面和图像优化

[原文发表地址] NuGet Package of the Week #1 – ASP.NET Sprite and Image Optimization [原文发表时间] Mar 6, 2011, 09:50 PM   我在想既然NuGet.Net软件包管理网站开始逐渐充实,那么我应该开始在那寻找宝石了(没有双关含义)。您知道,就是那种大家可能没法发现的非常有用的东西。我将主要寻找开源项目,那些我认为它们很有用的项目。我会查看它们如何生成NuGet包,他们设计方式的有趣之处,开箱体验(以及可改进之处),当然也会关注软件包本身所做的事。   子图片和图像优化预览版本3   首先,我注意到ASP.NET子画面和图像优化预览版本已经更新到预览版本3了。这是微软可能在将来的ASP.NET中发布但是您现在就可以使用的一个东西。它甚至更容易使用,因为它就在NuGet中。     他们架构的很好。实际上,总共有3个软件包,其中“叶子”软件包依附于核心软件包。  AspNetSprites-Core AspNetSprites-WebFormsControl AspNetSprites-MvcAndRazorHelper 这是提供给ASP.NET来自动生成CSS子图片和内嵌图像的API。它可以在ASP.NET WebForm、MVC以及Web页面中使用。如果您正在编写自己的库并希望它通用于所有3个ASP.NET技术,这是一个很好的例子(请记住它全是ASP.NET)请参看这里获取所有的源代码. 子图片背后的理念是——如果您有一个页面上有几十甚至几百个小图片,可能是页面上的图标,此时,您将会因为大量的HTTP请求而耗费时间。相反,为什么不拿回有效图片拼出来的单个大图片让浏览器在运行时再使用CSS分割它们为“子图片”呢。然而,实际创建这些网格状图片往往很麻烦。   您不仅需要原始图片,还需要创建一个CSS文件,包含您所需要的图片在源图片中所处的相对位置。   您也可以在一些新的浏览器中通过Base-64编码小图片创建“内嵌图片”并把他们放在页面上的img标签中。   WebForm中的ASP.NET子图片   他们在安装软件包时生成的 App_Sprites文件夹中添加了一个有用的readme.txt(这是一种最佳实践)。下面就是readme。它很有用,因为它告诉你一切需要知道的东西并包括指向文档的指针。您会惊讶于极少软件包这么做。请记住您的NuGet用户可能在Visual Studio中或在其附近,而且因为NuGet的存在是为了避免我们辛辛苦苦地找东西,请不要让您的用户找东西找得很辛苦。   欲知ASP.NET子图片和图像优化框架的详细信息,请访问http://aspnet.codeplex.com/releases/view/61896.   快速入门:   1)       将您的图片添加至“App_Sprites”目录。 2)       取决于您的应用程序类型:   ****************************…

0