Tag: png

如何使用C#生成PNG文件?

我正在尝试使用C#生成PNG文件。 我google的所有内容似乎都与WPF相关。 我的问题是,我需要在.NET 2.0中创建一个填充绿色的PNG 50×50正方形。 我的问题是,我该怎么做? 我在查看System.Drawing命名空间。 但毕竟,我觉得我离开了。 有人可以给我一些指示吗?

管理的PNG优化库可用吗?

我希望在我的构建(TFS 2010 Build Workflow)中构建PNG优化(各种PNG“sqeezer / squisher”)。 我想创建一个新的构建活动,就像我的所有活动一样,我更喜欢将所有代码都管理好几乎没有依赖。 我搜索过(谷歌搜索)并发现许多不同的PNG库用于PNG优化。 PNGOUT,PNGCRUSH,OptiPNG等等。它们都不是.NET。 它们看起来都很棒。 我不想从我的代码活动中调用EXE文件(单独的进程),因为你从未真正知道会发生什么(不太可靠)。 所以我想也许PNGGauntlet会是一个选择。 但是快速查看已安装的应用程序,它只是一个调用二进制pngout.exe的C#GUI。 这正是我不想做的事情。 所以我的问题是 :是否有一个开源和/或免费的.NET库(DLL)进行PNG压缩?

制作按钮图?

我如何做以下我不是要求具体的代码,但我需要一些方向,因为我已经绞尽脑汁待了好几个星期。 我只想制作一张例如地图。 美国和每个州都是不同的图片或区域,可以被鼠标点击和点击。 我试过用png和透明胶片玩,但我已经走到了尽头。 更雄心勃勃的是,我想把州首府的标签拖到每个州,然后将它们放在那里然后有一个过程,如果标签/大写与其正确的状态匹配,否则它不是。 我已经尝试过GIS(?)我想做这个C#但是到目前为止我无法获得如何做到这一点。 有人可以帮忙吗? 这在C#中是否太难了? 我应该使用另一种方法吗? 请问是什么方法?

半透明PNG作为启动画面

我正在尝试将Splash Screen 4设为Win应用程序。 我的设置: 表单边框样式设置为none。 开始位置是屏幕中心。 窗体的背景图像设置为PNG文件,带有圆边和“内置”投影。 在我设置的代码中: this.SetStyle( ControlStyles.AllPaintingInWmPaint, true); this.SetStyle( ControlStyles.UserPaint, true); this.SetStyle( ControlStyles.DoubleBuffer, true); this.SetStyle( ControlStyles.SupportsTransparentBackColor, true); this.AllowTransparency = true; this.BackColor = Color.Transparent; 但是当我测试时,它表示表单不能具有透明的背景颜色。 我不想设置透明度键,因为它会导致dropchadow(png的半透明部分)出现问题 我也不想将不透明度设置为0%,因为它也会影响我的PNG。 事实上,我只想把我的png显示为窗口。 另外,它上面会有一些动态文本和未来的处理栏…… 有任何想法吗? 如何告诉CAN表格具有透明背景, 如ADOBE PHOTOSHOP CS5的闪屏

裁剪图像有时是错误的区域

我正在使用jQuery-cropbox在Web应用程序上裁剪图像。 一切都在大部分时间内流畅运行,但有时生成的图像是错误的,就好像裁剪是用错误的坐标应用的。 例如,请考虑以下图像 : 在cropbox中,我缩放并拖动,直到我得到: 但是当我点击裁剪按钮时,它给了我: 这是裁剪代码: private Bitmap CropImage(Image img, Rectangle rect) { Bitmap newImg = new Bitmap(rect.Width, rect.Height); Graphics g = Graphics.FromImage(newImg); g.DrawImage(img, -rect.X, -rect.Y); return newImg; } //… // save image var streamOut = new MemoryStream(); Bitmap newImg = CropImage(oldImg, rect); newImg.Save(streamOut, ImageFormat.Png); oldImg是先前发布的图像,是我用来裁剪的坐标。 我当然检查了rect中的坐标,它们是正确的。 作为参考,为了获得结果,如果坐标是(那些可能不完全准确,我从第二次测试中取得它们,所以我当然放置了不同的图片): x: 47 y: 94 w: 150 […]

如何设计一个很酷的半透明防溅屏?

我正在尝试设计半透明屏幕作为Adobe Photoshop和视觉工作室半透明欢迎闪屏同时打开应用程序。 我将FormBorderStyle设置为none,并在其上放置了一个picturebox,我添加了一个png图像,我将picturebox颜色设置为透明,但我无法将Form的背面颜色设置为透明。 以下是例子: 当我将窗体的Back Color设置为透明时,它会显示错误 财产无效。 控件不支持透明背景颜色。 我已经尝试了几个代码示例,如下所示: public Splash_Screen() { this.SetStyle(ControlStyles.SupportsTransparentBackColor, true); InitializeComponent(); this.BackColor = Color.Red; BackColor = Color.Transparent; } 和 public Splash_Screen() { this.SetStyle(ControlStyles.SupportsTransparentBackColor, true); InitializeComponent(); } 但是,没有事情对我有用..有什么建议吗?

将.dds转换为.png:XNA真的令人费解吗?

我有一个.dds文件,我想要一个.png文件。 虽然我已经发现了 DevIL.NET库 ,但是一个静态类的API设计没有并行化,所以我希望找到另一种方法。 这让我想到了XNA。 但是,这就是我对这个想法的了解…… 好吧,看起来我想要这个Texture2D类; 然后我可以调用myTexture2D.SaveAsPng 。 但是如何从我的.dds文件中获取其中一个呢? 那么文档似乎表明我想使用myContentManager.Load 。 哦,废话,不是它,这是某种游戏内容管理系统。 好吧,我的搜索似乎已经出现了很多myTexture2D.LoadFile ; 我会去那。 我错过了汇编参考或其他什么? 哦不,我明白了,他们在3.1和4.0之间删除了那个方法,很棒。 好吧,这有点烦人,但myTexture2D.LoadStream并不是真正的问题。 等等现在这是什么? 它想要一个GraphicsDevice ? 嗯,看起来人们通常会通过GraphicsDeviceManager获得其中一个……哦等等,我不会再去那条路了,不再是Manager给我的。 我想我应该手动实例化这个东西。 好吧,这不是太难… var myGraphicsDevice = new GraphicsDevice(GraphicsAdapter.DefaultAdapter, GraphicsProfile.HiDef, (噢,这个PresentationParameters东西是好的,我只是尝试new PresentationParameters()); var myGraphicsDevice = new GraphicsDevice(GraphicsAdapter.DefaultAdapter, GraphicsProfile.HiDef, 那是一个例外。 他们想要我的PresentationParameters一个DeviceWindowHandle ? 但我正在运行一个控制台应用程序! 所以我真的希望有一种不太复杂的方式来做这件事; 也许我可以使用某种默认的GraphicsDevice 。 创建一个整个窗口只是为了将.dds转换为.png感觉很愚蠢。 我想,对于我的转换问题的其他建议表示欢迎,尽管理解如何从一般的非XNA代码中使用XNA可能是值得的。

将两个png图像合并为透明度并保持透明度

可能重复: 在C#/ .NET中合并两个图像 我有两个png格式图像,并且都定义了透明度。 我需要将这些合并到一个新的png图像中,但不会丢失结果中的任何透明度。 将第一个图像视为主图像,第二个图像用于添加叠加,例如添加/编辑/删除指示符。 我正在尝试创建一个小实用程序,它将采用主图像和一组叠加,然后生成组合它们的结果输出图像集。 对于PHP的解决方案似乎有很多答案,但C#/没有任何答案

在应用程序中使用256 x 256 Windows Vista图标

我有一个应用程序,我已经制作了一个256 x 256 Windows Vista图标。 我想知道如何在用作应用程序图标的ico文件中使用256×256 PNG文件并将其显示在表单上的图片框中。 我使用的是VB.NET,但C#中的答案都很好。 我想我可能不得不使用reflection。 我不确定这在Windows XP中是否可行,并且可能需要Windows Vista API

png到bmp

无论如何我可以在p#中将png转换为bmp 我想下载一个图像然后将其转换为bmp然后将其设置为桌面背景 我有下载位和后台位完成 我只需要将png转换为bmp