C# 使用System.Drawing.Bitmap有问题 5C

using System;
using System.Drawing;

namespace yingguang
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World");
Bitmap tempBmp;
}
}
}
Program.cs(11,13): error CS0246: 未能找到类型或命名空间名“Bitmap”(是否缺少 using 指令或程序集引用?)
使用的是vscode 和 .Net core

4个回答

System.Drawing需要GDI+,这是windows特有的库。.net core是不是支持,比较玄。
你死马当活马医,引用下看看吧。(光using不行)

icecream2017
icecream2017 这是指要安装GDI+的库吗?
接近 2 年之前 回复
showbo
支付宝加好友偷能量挖 O(∩_∩)O哈哈~。。。
接近 2 年之前 回复

System.Drawing 在 .net framework 下 引用

试试如下方法:在“解决方案“下的“引用”,“添加引用”,选择“.net”,找到“System.Drawing”,选中它,点击确定。

DvnYan
炎纹 可以
10 个月之前 回复
dingdang23
dingdang23 回复icecream2017: 不了解vscode,vs有”解决方案“
接近 2 年之前 回复
icecream2017
icecream2017 哪有解决方案
接近 2 年之前 回复

试试命名空间System.Drawing.Bitmap

icecream2017
icecream2017 这个试过了,没有用。
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
c# uploadify3.2.1 上传路径问题
[WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] public class UploadHandler : IHttpHandler, IRequiresSessionState { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; context.Response.Charset = "utf-8"; HttpPostedFile file = context.Request.Files["Filedata"]; //string uploadPath = context.Server.MapPath("..\\uploads\\"); string uploadPath = "D:\\SiteFile\\image.cnev.cn\\"; if (file != null) { if (!Directory.Exists(uploadPath)) { Directory.CreateDirectory(uploadPath); } file.SaveAs(uploadPath + file.FileName); //生成缩略图 MakeThumbnail(uploadPath + file.FileName, uploadPath + "\\s\\" + file.FileName, 80, 80); } } private void MakeThumbnail(string sourcePath, string newPath, int width, int height) { System.Drawing.Image ig = System.Drawing.Image.FromFile(sourcePath); int towidth = width; int toheight = height; int x = 0; int y = 0; int ow = ig.Width; int oh = ig.Height; if ((double)ig.Width / (double)ig.Height > (double)towidth / (double)toheight) { oh = ig.Height; ow = ig.Height * towidth / toheight; y = 0; x = (ig.Width - ow) / 2; } else { ow = ig.Width; oh = ig.Width * height / towidth; x = 0; y = (ig.Height - oh) / 2; } System.Drawing.Image bitmap = new System.Drawing.Bitmap(towidth, toheight); System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap); g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High; g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; g.Clear(System.Drawing.Color.Transparent); g.DrawImage(ig, new System.Drawing.Rectangle(0, 0, towidth, toheight), new System.Drawing.Rectangle(x, y, ow, oh), System.Drawing.GraphicsUnit.Pixel); try { bitmap.Save(newPath, System.Drawing.Imaging.ImageFormat.Jpeg); } catch (Exception ex) { throw ex; } finally { ig.Dispose(); bitmap.Dispose(); g.Dispose(); } } public bool IsReusable { get { return false; } } } UploadHandler.ashx配置如上, 问题是上传的时候自动传到如下目录 根本没有执行配置文件 这是为什么![图片说明](https://img-ask.csdn.net/upload/201505/21/1432191901_224720.png)
无法将System.Drawing.Bitmap转为System.DrawingCore.Bitmap
``` public System.DrawingCore.Bitmap QRCodeBimapForString(string nr) { string enCodeString = nr; QRCodeEncoder qrCodeEncoder = new QRCodeEncoder(); //编码方式(注意:BYTE能支持中文,ALPHA_NUMERIC扫描出来的都是数字) qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE; qrCodeEncoder.QRCodeScale = 4;//大小(值越大生成的二维码图片像素越高) //版本(注意:设置为0主要是防止编码的字符串太长时发生错误) qrCodeEncoder.QRCodeVersion = 7; //错误效验、错误更正(有4个等级) qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M; System.Text.Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); return (System.DrawingCore.Bitmap)qrCodeEncoder.Encode(enCodeString, Encoding.GetEncoding("GB2312")); } ``` ![图片说明](https://img-ask.csdn.net/upload/201906/01/1559396058_326360.png)
请教 C# Graphics.DrawImage 的问题
请教为什么图片会粘不过去呢?以下是一些关键的代码 Bitmap bitmap = null; //按截图区域生成Bitmap Image thumbImg = null; //被截图 Image test = null; Graphics gps = null; //存绘图对象 bitmap = new System.Drawing.Bitmap(Convert.ToInt32(maxVal), Convert.ToInt32(maxVal)); thumbImg = System.Drawing.Image.FromFile(System.Web.HttpContext.Current.Server.MapPath(imgUrl)); System.Drawing.Rectangle rl = new System.Drawing.Rectangle(Convert.ToInt32(pointX), Convert.ToInt32(pointY), Convert.ToInt32(maxVal), Convert.ToInt32(maxVal)); //得到截图矩形 gps = System.Drawing.Graphics.FromImage(bitmap); gps.DrawImage(thumbImg, 0, 0, rl, System.Drawing.GraphicsUnit.Pixel);
MAC下Unity C# 在线等
别人写个unity的C#脚本,在PC上是可以跑得,但到MAC上走到Bitmap bitmap = (Bitmap)Bitmap.FromFile(path, false);;这里就报错:DllNotFoundException: libgdiplus.dylib System.Drawing.GDIPlus..cctor () Rethrow as TypeInitializationException: An exception was thrown by the type initializer for System.Drawing.GDIPlus 。 是不是MAC不支持system.drawing?还是什么?要是不支持,我应该用哪个类库里的什么方法来代替Bitmap bitmap = (Bitmap)Bitmap.FromFile(path, false)这个方法, 我用的UNity是4.6MAC破解版,编译器是Monodevelop,求大神指教啊 ,我不会C#,C++,求大神详解,跪谢!
C# 构造函数new Bitmag(Image)
这个构造函数生成的Bitmap对象的PropertyItems 为空,是bug么?还是有其他的问题,小弟代码如下 public static void GetProperty() { Image image1 = Image.FromFile(@"C:\5.jpg"); Bitmap myBitmap = new Bitmap(image1); ``` 我在VS 的immediate window中查看是这样结果 tempImage.PropertyItems {System.Drawing.Imaging.PropertyItem[2]} [0]: {System.Drawing.Imaging.PropertyItem} [1]: {System.Drawing.Imaging.PropertyItem} tempMap.PropertyItems {System.Drawing.Imaging.PropertyItem[0]} ``` 求大神指点,file肯定没有问题,路径也没有问题,我试了几种方式,从bitMap转换为image就不会有这个问题,只用以这种方式new一个BitMap对象时会有这个问题
C# wpf bitmap在image控件中显示
希望点击按钮后,将图片在IMAGE控件中显示,怎么实现 private void button1_Click(object sender, RoutedEventArgs e) { CStaresq IMEAGE = new CStaresq(); CStareim IMASIN = new CStareim(); IMEAGE .ReadandUpload (conn,UploadFilenames[0]); byte[] ImageShow = IMEAGE.Picbuf[0]; MemoryStream ms1 = new MemoryStream(ImageShow); System.Drawing.Bitmap bm = (Bitmap)System.Drawing.Image.FromStream(ms1); conn.Close(); ms1.Close(); }
C# 图像处理 灰度图 System.OverflowException:“溢出错误。”
代码是我在学习赵春江老师的C#数字图像处理算法典型实例中搬到VS2017上的, 由于随书附带的源代码,年份久远,不能直接在VS2017上运行,所以text文档打开,搬到VS上试图运行的,使用的图片已经是8位深度灰度处理过的图片,但是却无法解释溢出错误 ,本人纯属菜鸟,希望各位有经验的同学指点一番。 代码如下: namespace WindowsFormsPictureToMatrix { public partial class histForm : Form { //图像数据 private System.Drawing.Bitmap bmpHist; private int[] countPixel; //记录最大的灰度个数 private int maxPixel; public histForm(Bitmap bmp) { InitializeComponent(); //将主窗体的数据传递给子窗体 bmpHist =bmp; countPixel = new int[256]; } private void histForm_Load(object sender, EventArgs e) { //锁定8位灰度位图 Rectangle rect = new Rectangle(0, 0, bmpHist.Width, bmpHist.Height); System.Drawing.Imaging.BitmapData bmpData = bmpHist.LockBits(rect, System.Drawing.Imaging.ImageLockMode.ReadWrite, bmpHist.PixelFormat); IntPtr ptr = bmpData.Scan0; int bytes = bmpHist.Width * bmpHist.Height; //int bytes = bmpData.Stride * bmpData.Height; byte[] grayValues = new byte[bytes]; System.Runtime.InteropServices.Marshal.Copy(ptr, grayValues, 0, bytes); byte temp = 0; maxPixel = 0; Array.Clear(countPixel, 0, 256); for (int i = 0; i < bytes; i++) { temp = grayValues[i]; countPixel[temp]++; if (countPixel[temp] > maxPixel) { maxPixel = countPixel[temp]; } System.Runtime.InteropServices.Marshal.Copy(grayValues, 0, ptr, bytes); bmpHist.UnlockBits(bmpData); } } private void histForm_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; Pen curPen = new Pen(Brushes.Black, 1); //绘制横纵坐标 g.DrawLine(curPen, 50, 240, 320, 240); g.DrawLine(curPen, 50, 240, 50, 30); g.DrawLine(curPen, 100, 240, 100, 242); g.DrawLine(curPen, 150, 240, 150, 242); g.DrawLine(curPen, 200, 240, 200, 242); g.DrawLine(curPen, 250, 240, 250, 242); g.DrawLine(curPen, 300, 240, 300, 242); //横坐标刻度 g.DrawString("0", new Font("New Timer", 8), Brushes.Black, new PointF(46, 242)); g.DrawString("50", new Font("New Timer", 8), Brushes.Black, new PointF(92, 242)); g.DrawString("100", new Font("New Timer", 8), Brushes.Black, new PointF(139, 242)); g.DrawString("150", new Font("New Timer", 8), Brushes.Black, new PointF(189, 242)); g.DrawString("200", new Font("New Timer", 8), Brushes.Black, new PointF(239, 242)); g.DrawString("250", new Font("New Timer", 8), Brushes.Black, new PointF(289, 242)); g.DrawLine(curPen, 48, 40, 50, 40); g.DrawString("0", new Font("New Timer", 8), Brushes.Black, new PointF(34, 234)); g.DrawString(maxPixel.ToString(), new Font("New Timer", 8), Brushes.Black, new PointF(18, 34)); //绘制直方图纵坐标 double temp = 0; for (int i = 0; i < 256; i++) { temp = 200.0 * countPixel[i] / maxPixel; g.DrawLine(curPen, 50 + i, 240, 50 + i, 240 - (int)temp);//溢出错误!!! } curPen.Dispose(); } } } 测试用图: 说明:csdn在编辑上传图片的时候不允许使用.bmp格式,我就改成了.jpg格式,不知道格式会不会对程序有所影响,如果有必要,还请各位帮我查看问题的时候修改为.bmp,谢谢各位。 ![图片说明](https://img-ask.csdn.net/upload/201710/23/1508769669_814570.jpg)
c# Bitmap位图区域被锁定
定义了一个全局变量 Bitmap curBitmap=Null curBitmap = new Bitmap(imageBox.Image.Bitmap); //位图赋值 然后写了一个函数 public void Vehiclecolor(Bitmap curBitmap, int iw, int ih) 在里面想调用蓝通道像素值 int greyB = (curBitmap.GetPixel(i, j).B); 但是出现位图区域被锁的情况,在System.Drawing.dll中 可是curBitmap都还未被任何一个进程使用,怎么会被锁?
使用钩子功能的C#程序运行十次左右后会失灵是什么原因
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; namespace HookINCS { public partial class Form1 : Form { private Hook hook; public Form1() { InitializeComponent(); hook = Hook.GetInstance(); hook.OnKeyPress += new KeyEventHandler(OnKeyDown); hook.InstallKeyBoardHook(); } //截图功能 public static void Snap(object source, System.Timers.ElapsedEventArgs e) { int x = 300; int y = 200; int width = 500; int height = 500; Image image = new Bitmap(width, height); Graphics g = Graphics.FromImage(image); g.CopyFromScreen(x, y, 0, 0, new System.Drawing.Size(width, height)); image.Save(@"C:\Users\q1120\Desktop\jietuzanliu\newpng.Png", System.Drawing.Imaging.ImageFormat.Png); } public static void phase2(object source, System.Timers.ElapsedEventArgs e) { MouseFlag.MouseLefClickEvent(380, 340, 0); } private void OnKeyDown(object sender, KeyEventArgs e) { textBox1.Text = e.KeyCode.ToString(); if (textBox1.Text == "Return") { //定时器 System.Timers.Timer t = new System.Timers.Timer(12700); t.Elapsed += new System.Timers.ElapsedEventHandler(Snap); t.AutoReset = false; t.Enabled = true; //等待12秒 System.Threading.Thread.Sleep(13000); // 图像处理 Bitmap bmp = new Bitmap(@"C:\Users\q1120\Desktop\jietuzanliu\newpng.Png"); for (int i = 1; i < 400; i++) { for (int j = 1; j < 400; j++) { Color col = bmp.GetPixel(i, j); if (col.R < 200 && col.G > 200 && col.B < 120) { MouseFlag.MouseLefClickEvent(480, 460, 0); System.Timers.Timer t1 = new System.Timers.Timer(23000); t1.Elapsed += new System.Timers.ElapsedEventHandler(phase2); t1.AutoReset = false; t1.Enabled = true; break; } } } textBox1.Text = ""; bmp.Dispose(); } } } } 刚学C#写的非常粗糙,但是程序是可以正常运行的,功能也都能实现,但是当运行十次左右后程序就无法再获得enter键按下的消息,这应该是什么原因
c#程序里有个地方出错,提示unsafe使用不正确,(c#)
private void button2_Click(object sender, EventArgs e) { Bitmap src = new Bitmap(pictureBox1.Image); int w = pictureBox1.Image.Width; int h = pictureBox1.Image.Height; try { Bitmap bitmap1 = new Bitmap(w, h, System.Drawing.Imaging.PixelFormat.Format24bppRgb); System.Drawing.Imaging.BitmapData myData1 = src.LockBits(new Rectangle(0, 0, w, h), System.Drawing.Imaging.ImageLockMode.ReadOnly, System.Drawing.Imaging.PixelFormat.Format24bppRgb); System.Drawing.Imaging.BitmapData myData2 = bitmap1.LockBits(new Rectangle(0, 0, w, h), System.Drawing.Imaging.ImageLockMode.WriteOnly, System.Drawing.Imaging.PixelFormat.Format24bppRgb); unsafe { byte* pIn = (byte*) myData1.Scan0.ToPointer(); byte* pOut = (byte*)myData2.Scan0.ToPointer(); byte* p; int Stride =myData1.Stride; for(int y = 0;y < h ; y ++) { for(int x = 0;x < w; x++) { //边缘8个点像素不变 if(x==0|| x==w-1||y==0||y==h-1) { pOut[0]=pIn[0]; pOut[1]=pIn[1]; pOut[2]=pIn[2]; } else { int r0,r1,r2,r3,r4,r5,r6,r7,r8; int g0,g1,g2,g3,g4,g5,g6,g7,g8; int b0,b1,b2,b3,b4,b5,b6,b7,b8; double vR,vG,vB; //左上 p=pIn-Stride-3; r1=p[2]; g1=p[1]; b1=p[0]; //正上 p=pIn-Stride; r2=p[2]; g2=p[1]; b2=p[0]; //右上 p=pIn-Stride + 3; r3=p[2]; g3=p[1]; b3=p[0]; //左 p=pIn-3; r4=p[2]; g4=p[1]; b4=p[0]; //右 p=pIn+Stride-3; r5=p[2]; g5=p[1]; b5=p[0]; //左下 p=pIn+Stride-3; r6=p[2]; g6=p[1]; b6=p[0]; //正下 p=pIn+Stride; r7=p[2]; g7=p[1]; b7=p[0]; //右下 p=pIn+Stride+3; r8=p[2]; g8=p[1]; b8=p[0]; //中心点 p=pIn; r0=p[2]; g0=p[1]; b0=p[0]; //使用模板 vR = (double) ((r1+r3+r6+r8+2*r2+2*r4+2*r7+2*r5+4*r0)/16); vG = (double) ((g1+g3+g6+g8+2*g2+2*g4+2*g7+2*g5+4*r0)/16); vB = (double) ((b1+b3+b6+b8+2*b2+2*b4+2*b7+2*b5+4*r0)/16); if(vR>0) { vR = Math.Min(255,vR); } else { vR = Math.Max(0,vR); } if(vG>0) { vG=Math.Min(255,vG); } else { vG=Math.Max(0,vG); } if(vB>0) { vB=Math.Min(255,vB); } else { vB=Math.Max(0,vB); } double temp =(vR*19595+vG*38469+vB*7472)/65536; pOut[0]=(byte)temp; pOut[1]=(byte)temp; pOut[2]=(byte)temp; } pIn+=3; pOut+=3; } pIn+=myData1.Stride-w*3; pOut+=myData1.Stride-w*3; } } src.UnlockBits(myData1); bitmap1.UnlockBits(myData2); pictureBox2.Image=bitmap1; } catch { pictureBox2.Image=null; } } ```![图片说明](https://img-ask.csdn.net/upload/201604/04/1459776885_5668.png) # ## # ```![图片说明](https://img-ask.csdn.net/upload/201604/04/1459776948_516228.png)c#
C# 网页自动截图有时候截图有内容,有时候截图没有内容是怎么回事
string url = "http://www.taobao.com"; GetImage thumb = new GetImage(url, 1024, 1200, 1024, 1200); System.Drawing.Bitmap x = thumb.GetBitmap(); string FileName = DateTime.Now.ToString("yyyyMMddhhmmss"); x.Save(System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "sectionalDrawingImages\\" + FileName + ".jpg"); ![图片说明](https://img-ask.csdn.net/upload/201501/08/1420687659_747313.png)
C#画图:用C#画图的时候遇到了问题
``` using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Text; using System.Drawing; using System.Text.RegularExpressions; using System.Reflection; using System.Collections.Generic; using Tools; using DBAPI; using Functions; using System.Web.Script.Serialization; using System.IO;//文件存取 using System.Drawing;//画图基本功能 using System.Drawing.Drawing2D;//二维画图 using System.Drawing.Imaging;//高级功能 public partial class V2_NodeState_AirCleaner2_Chart2 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Bitmap img = new Bitmap(400, 200);//创建Bitmap对象 MemoryStream stream = draw(); img.Save(stream, ImageFormat.Jpeg); //保存绘制的图片 Response.Clear(); Response.ContentType = "image/jpeg"; Response.BinaryWrite(stream.ToArray()); } public MemoryStream draw() { Bitmap img = new Bitmap(400, 200);//创建Bitmap对象 Graphics g = Graphics.FromImage(img);//创建Graphics对象 Pen Bp = new Pen(Color.Black); //定义黑色画笔 Pen Rp = new Pen(Color.Red);//红色画笔 Pen Sp = new Pen(Color.Blue);//蓝色 SolidBrush redBrush = new SolidBrush(Color.Red); AdjustableArrowCap aac; //定义箭头帽 aac = new System.Drawing.Drawing2D.AdjustableArrowCap(4, 4); Sp.CustomStartCap = aac; //开始端箭头帽 //Sp.CustomEndCap = aac; Font Bfont = new Font("Arial", 12, FontStyle.Bold);//大标题字体 Font font = new Font("Arial", 6);//一般字 Font Tfont = new Font("Arial", 9);//较大字体 float w = 1.5F; float h = 1.5F; g.DrawRectangle(new Pen(Color.White, 400), 0, 0, img.Width, img.Height); //矩形 底色 //黑色过度型笔刷 LinearGradientBrush brush = new LinearGradientBrush(new Rectangle(0, 0, img.Width, img.Height), Color.Black, Color.Black, 1.2F, true); //蓝色过度型笔刷 LinearGradientBrush Bluebrush = new LinearGradientBrush(new Rectangle(0, 0, img.Width, img.Height), Color.Blue, Color.Blue, 1.2F, true); //g.DrawString("我的实验",Bfont,brush,40,5); //绘制大标题 g.DrawRectangle(Bp, 0, 0, img.Width - 100, img.Height - 40); //绘制矩形与上面的矩形即是边框 //原点坐标(150,90),一个单位坐标=8px g.DrawLine(Sp, 150, 10, 150, 150);//纵坐标 g.DrawLine(Sp, 300, 90, 20, 90);//横坐标 g.DrawString("5", font, brush, 188, 91); //横坐标数字 g.DrawString("10", font, brush, 226, 91); g.DrawString("15", font, brush, 266, 91); //g.DrawString("0.5", font, brush, 135, 86); //纵坐标数字 g.DrawString("1", font, brush, 135, 78); //g.DrawString("1.5", font, brush, 135, 78); g.DrawString("2", font, brush, 135, 70); g.DrawString("3", font, brush, 135, 62); g.DrawLine(Bp, 190, 85, 190, 90); //横坐标刻度线 g.DrawLine(Bp, 230, 85, 230, 90); g.DrawLine(Bp, 270, 85, 270, 90); g.DrawLine(Bp, 155, 82, 150, 82);//纵坐标刻度线 g.DrawLine(Bp, 155, 74, 150, 74); g.DrawLine(Bp, 155, 66, 150, 66); //画函数曲线 这样以 y=x^2 为例 用穷举函数曲线中的两点画曲线 //画0-2中的点,步长为0.1 for (double i = 0; i <= 2; ) { double Write11 = (150 + 8 * i); double Write12 = 90 - 8 * (Math.Pow(i, 2)); double Write21 = (150 + 8 * (i + 0.1)); double Write22 = 90 - 8 * (Math.Pow(i + 0.1, 2)); g.DrawLine(Bp, (float)Write11, (float)Write12, (float)Write21, (float)Write22); //img.SetPixel((int)Write11, (int)Write12, Color.Red); g.FillEllipse(redBrush,(float)Write11,(float)Write12, w, h); i = i + 0.1; } for (double i = -2; i <= 0; ) { double Write11 = (150 + 8 * i); double Write12 = 90 - 8 * (Math.Pow(i, 2)); double Write21 = (150 + 8 * (i + 0.1)); double Write22 = 90 - 8 * (Math.Pow(i + 0.1, 2)); g.DrawLine(Bp, (float)Write11, (float)Write12, (float)Write21, (float)Write22); i = i + 0.1; } MemoryStream stream = new MemoryStream(); //保存绘制的图片 img.Save(stream, ImageFormat.Jpeg); //保存绘制的图片 return stream; } } Bitmap img = new Bitmap(1000, 500);//创建Bitmap对象 将new Bitmap(400, 200)中的值修改为(1000,500)就会在图片中出现一个黑色的矩形框 而且经过尝试,发现只要改大,就会出现黑色的框,同时这个框也会随着修改的值而变。 ``` **如下图所示:** ![图片说明](https://img-ask.csdn.net/upload/201501/14/1421214952_942680.png)
c#关于窗体截图是空白
我一个窗体里面放了一个WEBBROSER,然后截取窗体的图片就获得了webbrowser当前浏览的图片了,但是不知道为什么有时候截的图是白色的,我滚动条隐藏了也一样 ,怎么才能让他总是截图成功呢? //截图代码 Bitmap bit1 = new Bitmap(this.Width, this.Height); this.DrawToBitmap(bit1, new Rectangle(0, 0, this.Width, this.Height)); int border = (this.Width - this.ClientSize.Width) / 2;//边框宽度 int caption = (this.Height - this.ClientSize.Height) - border;//标题栏高度 Bitmap bit2 = bit1.Clone(new Rectangle(border, caption, this.ClientSize.Width, this.ClientSize.Height), System.Drawing.Imaging.PixelFormat.Format24bppRgb); bit1.Save("D:\\AAA.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);//包括标题栏和边框 bit2.Save("D:\\BBB.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);//不包括标题栏和边框 bit1.Dispose(); bit2.Dispose();
c#我这样写代码后,为什么运行后窗体不显示picturebox中的图片,要怎样才能显示
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace _1340226147 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private void AddPictureBox(int left, int top) { } private void axBarCodeCtrl1_Enter(object sender, EventArgs e) { axBarCodeCtrl1.Value = "1340226147"; } private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { Graphics g = e.Graphics; Bitmap bb = BarCodeTest.ControlBitmap.getControlBitmap(axBarCodeCtrl1); g.DrawString("***", new Font("宋体", 30, FontStyle.Bold), new SolidBrush(Color.Black), 10, 10); g.DrawImage(bb, 10, 100); //Bitmap ab = } private void button1_Click(object sender, EventArgs e) { printDocument1.Print(); } private void Form1_Paint(object sender, PaintEventArgs e) { } } }
C#中的Format16bppGrayScale格式的图片有什么特殊吗,怎么保存 呢
byte[] rgbs = new byte[500 * 500]; IntPtr hglobal = IntPtr.Zero; addWithCuda(data_cal,line,startt, cut_arraysize, biaoding, rgb, aa, bb, minn_gray, maxx_gray, color_gray,outt); Bitmap myBMP; string final_name = pathString + "\\" + k3.ToString() + ".bmp"; rgbs里面存的是加了色调的数据 System.Runtime.InteropServices.Marshal.Copy(rgbs, 0, hglobal, rgbs.Length); myBMP = new Bitmap(line, 500, 500*2, System.Drawing.Imaging.PixelFormat.Format16bppGrayScale, hglobal); myBMP.Save(final_name, System.Drawing.Imaging.ImageFormat.Bmp); 在保存时出错,说是GDI的一般性错误
c# image转bitmap出现这个问题怎么解决?
我想从文件中读取一张图片,然后将它转化为bitmap类型,但是显示bitmap 里面宽和高都为0,还有一个result包含读取的image信息 ![图片说明](https://img-ask.csdn.net/upload/201905/05/1557019904_941078.png) 显示的错误是不能将System.Drawing.Image转化为interaction.Bitmap,interaction是命名空间 这是代码: ``` string path = @"C:\Users\olivier\Desktop\image\1.jpg"; Image pic = Image.FromFile(path); Bitmap bit = new Bitmap(pic); ``` 小弟菜鸟一枚,求救da'xia'men ![图片说明](https://img-ask.csdn.net/upload/201905/05/1557022664_189178.png) 如果强制转换就成这样了 ![图片说明](https://img-ask.csdn.net/upload/201905/05/1557023922_596604.png)
用c# 怎么实现图片格式转换 (主要是转换成Ico格式图片)
通过:savePic.Save(FileName ,System.Drawing.Imaging.ImageFormat.Icon) 转换成共后的图片不能使用 而通过下面的方法 转换后的图片虽然可以用但是明显发生了变化 private void ZhuangHuan(string sourcePath,string desPath) { using(Bitmap bitmap=new Bitmap(sourcePath)) { using(Bitmap newBitmap=bitmap.Clone(new Rectangle(0,0,bitmap.Width,bitmap.Height),PixelFormat.Format24bppRgb)) { using(Icon icon=Icon.FromHandle(newBitmap.GetHicon())) { FileStream fileStream = new FileStream(desPath, System.IO.FileMode.Create); icon.Save(fileStream); } } } } 有没有更好的办法??
C#如何使Load下的两段代码分开执行?
``` private void Origination_Load(object sender, EventArgs e) { progressBar1.Minimum = 0; progressBar1.Maximum = 50; progressBar1.MarqueeAnimationSpeed = 50; Counter.Start(); //启动计时器 } private void Origination_Load(object sender, EventArgs e) { bit = new Bitmap("25.jpg"); bit.MakeTransparent(Color.Blue); } protected override void OnPaint(PaintEventArgs e) { e.Graphics.DrawImage((Image)bit, new Point(0, 0)); //在窗体上绘制图片 } ``` 第一段是一个进度条代码,第二个是非矩形窗体代码,都要写在Load事件下,这样会报错:已定义了一个名为“Origination_Load”的具有相同参数类型的成员。我改成了 ``` private void Origination_Load_1(object sender, EventArgs e) ``` 这样又会报错 “System.ArgumentNullException”类型的未经处理的异常出现在 System.Drawing.dll 中。 其他信息: 值不能为 null。
C# typeof实例化对象怎么赋初始值
我创建了一个DesignPanel对象,但是想给他赋初始化值,但是ToolboxItem内用的是typeof的方式创建的,请问各位大神怎么写类似这样的代码 new ToolboxItem(typeof(DesignPanel){name:“123”}); ``` ToolboxItem toolPanel = new ToolboxItem(typeof(DesignPanel)); toolPanel.DisplayName = (item as RFWindos.Model.Encoder).name; toolPanel.Bitmap = new System.Drawing.Bitmap(16, 16); listBox1.Items.Add(toolPanel); ```
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私...
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
阿里面试官问我:如何设计秒杀系统?我的回答让他比起大拇指
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图和个人联系方式,欢迎Star和指教 前言 Redis在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在Redis的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸,打败了...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n...
面试官问我:什么是消息队列?什么场景需要他?用了会出现什么问题?
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式和人才交流群,欢迎Star和完善 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸...
Android性能优化(4):UI渲染机制以及优化
文章目录1. 渲染机制分析1.1 渲染机制1.2 卡顿现象1.3 内存抖动2. 渲染优化方式2.1 过度绘制优化2.1.1 Show GPU overdraw2.1.2 Profile GPU Rendering2.2 卡顿优化2.2.1 SysTrace2.2.2 TraceView 在从Android 6.0源码的角度剖析View的绘制原理一文中,我们了解到View的绘制流程有三个步骤,即m...
微服务中的Kafka与Micronaut
今天,我们将通过Apache Kafka主题构建一些彼此异步通信的微服务。我们使用Micronaut框架,它为与Kafka集成提供专门的库。让我们简要介绍一下示例系统的体系结构。我们有四个微型服务:订单服务,行程服务,司机服务和乘客服务。这些应用程序的实现非常简单。它们都有内存存储,并连接到同一个Kafka实例。 我们系统的主要目标是为客户安排行程。订单服务应用程序还充当网关。它接收来自客户的请求...
致 Python 初学者们!
作者| 许向武 责编 | 屠敏 出品 | CSDN 博客 前言 在 Python 进阶的过程中,相信很多同学应该大致上学习了很多 Python 的基础知识,也正在努力成长。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 Python 这门编程语言,从2009年开始单一使用 Python 应对所有的开发工作,直至今...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观...
程序员一般通过什么途径接私活?
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外...
字节跳动面试官这样问消息队列:分布式事务、重复消费、顺序消费,我整理了一下
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式和人才交流群,欢迎Star和完善 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip installselenium -ihttps://pypi.tuna.tsinghua.edu.cn/simple/ ...
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca...
SpringBoot2.x系列教程(三十六)SpringBoot之Tomcat配置
Spring Boot默认内嵌的Tomcat为Servlet容器,关于Tomcat的所有属性都在ServerProperties配置类中。同时,也可以实现一些接口来自定义内嵌Servlet容器和内嵌Tomcat等的配置。 关于此配置,网络上有大量的资料,但都是基于SpringBoot1.5.x版本,并不适合当前最新版本。本文将带大家了解一下最新版本的使用。 ServerProperties的部分源...
Python绘图,圣诞树,花,爱心 | Turtle篇
每周每日,分享Python实战代码,入门资料,进阶资料,基础语法,爬虫,数据分析,web网站,机器学习,深度学习等等。 公众号回复【进群】沟通交流吧,QQ扫码进群学习吧 微信群 QQ群 1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle()...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东...
破14亿,Python分析我国存在哪些人口危机!
一、背景 二、爬取数据 三、数据分析 1、总人口 2、男女人口比例 3、人口城镇化 4、人口增长率 5、人口老化(抚养比) 6、各省人口 7、世界人口 四、遇到的问题 遇到的问题 1、数据分页,需要获取从1949-2018年数据,观察到有近20年参数:LAST20,由此推测获取近70年的参数可设置为:LAST70 2、2019年数据没有放上去,可以手动添加上去 3、将数据进行 行列转换 4、列名...
听说想当黑客的都玩过这个Monyer游戏(1~14攻略)
第零关 进入传送门开始第0关(游戏链接) 请点击链接进入第1关: 连接在左边→ ←连接在右边 看不到啊。。。。(只能看到一堆大佬做完的留名,也能看到菜鸡的我,在后面~~) 直接fn+f12吧 &lt;span&gt;连接在左边→&lt;/span&gt; &lt;a href="first.php"&gt;&lt;/a&gt; &lt;span&gt;←连接在右边&lt;/span&gt; o...
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ...... ...
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
2020年全新Java学习路线图,含配套视频,学完即为中级Java程序员!!
新的一年来临,突如其来的疫情打破了平静的生活! 在家的你是否很无聊,如果无聊就来学习吧! 世上只有一种投资只赚不赔,那就是学习!!! 传智播客于2020年升级了Java学习线路图,硬核升级,免费放送! 学完你就是中级程序员,能更快一步找到工作! 一、Java基础 JavaSE基础是Java中级程序员的起点,是帮助你从小白到懂得编程的必经之路。 在Java基础板块中有6个子模块的学...
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合...
爬取薅羊毛网站百度云资源
这是疫情期间无聊做的爬虫, 去获取暂时用不上的教程 import threading import time import pandas as pd import requests import re from threading import Thread, Lock # import urllib.request as request # req=urllib.request.Requ...
如何优雅地打印一个Java对象?
你好呀,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员。虽然已经写了十多年的 Java 代码,但仍然觉得自己是个菜鸟(请允许我惭愧一下)。 在一个月黑风高的夜晚,我思前想后,觉得再也不能这么蹉跎下去了。于是痛下决心,准备通过输出的方式倒逼输入,以此来修炼自己的内功,从而进阶成为一名真正意义上的大神。与此同时,希望这些文章能够帮助到更多的读者,让大家在学习的路上不再寂寞、空虚和冷。 ...
雷火神山直播超两亿,Web播放器事件监听是怎么实现的?
Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播。在视频业务大数据平台中,播放数据的统计分析非常重要,所以Web播放器在使用过程中,需要对其内部的数据进行收集并上报至服务端,此时,就需要对发生在其内部的一些播放行为进行事件监听。 那么Web播放器事件监听是怎么实现的呢? 01 监听事件明细表 名...
3万字总结,Mysql优化之精髓
本文知识点较多,篇幅较长,请耐心学习 MySQL已经成为时下关系型数据库产品的中坚力量,备受互联网大厂的青睐,出门面试想进BAT,想拿高工资,不会点MySQL优化知识,拿offer的成功率会大大下降。 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 设计...
HTML5适合的情人节礼物有纪念日期功能
前言 利用HTML5,css,js实现爱心树 以及 纪念日期的功能 网页有播放音乐功能 以及打字倾诉感情的画面,非常适合情人节送给女朋友 具体的HTML代码 具体只要修改代码里面的男某某和女某某 文字段也可自行修改,还有代码下半部分的JS代码需要修改一下起始日期 注意月份为0~11月 也就是月份需要减一。 当然只有一部分HTML和JS代码不够运行的,文章最下面还附加了完整代码的下载地址 &lt;!...
相关热词 c#如何定义数组列表 c#倒序读取txt文件 java代码生成c# c# tcp发送数据 c#解决时间格式带星期 c#类似hashmap c#设置istbox的值 c#获取多线程返回值 c# 包含数字 枚举 c# timespan
立即提问