草庐IT

paintings

全部标签

android - Paint.setTextSize(float) 使用哪种计量单位?

我想使用Canvas在View上绘制具有特定高度(以像素为单位)的文本。您可以简单地使用Paint.setTextSize(float)和像素数,还是使用dp或sp? 最佳答案 它使用像素,但您可以使用以下代码将其转换为dp:doublegetDPFromPixels(doublepixels){DisplayMetricsmetrics=newDisplayMetrics();getWindowManager().getDefaultDisplay().getMetrics(metrics);switch(metrics.dens

c++ - 使用 BeginPaint/EndPain 而不是 GetDC/ReleaseDC 来响应 WM_PAINT 消息有什么特别之处吗?

可以使用GetDC/ReleaseDC在窗口客户区绘制。但是为了响应WM_PAINT消息,必须使用BeginPaint/EndPaint。这有什么特别的吗? 最佳答案 当窗口的一部分需要更新时,会发出WM_PAINT消息。通过指定BeginPaint/EndPaint(),您告诉gdi您实际上正在做那项工作。如果您不为指定区域调用BeginPaint(),WM_PAINT消息将一直生成,直到有人实际更新它为止。函数给你一个DC,就是因为方便。在内部BeginPaint()/EndPaint()可能调用GetDC()/ReleaseD

c++ - QtPainter 错误 Paint 设备返回引擎 ==0,类型 3,Painter 未激活

我正在尝试绘制图像的某些点,但我不知道为什么它不起作用。我定义了一个QImage,我想修改一些点。QImage*cou=newQImage(height,largeur,QImage::Format_Mono);cou->fill(1);QPainter*fig=newQPainter(cou);for(i=0;idrawPoint(floor(propa[i]),nbmax[i]);}当我执行我获得的代码时QPainter::begin:Paintdevicereturnedengine==0,type:3并在以下行中:QPainter::drawPoints:Painternota

c++ - Windows 中 Paint 事件中的异常和访问冲突

执行一些新代码后,我的C++应用程序开始表现异常(屏幕更新不正确或不完整,有时根本没有屏幕更新)。一段时间后,我们发现新代码导致了访问冲突。奇怪的是,该应用程序只是继续运行(但屏幕更新不正确)。起初我们认为问题是由“try-catch(...)”构造引起的(由一个过度活跃的前同事放置在那里),但几个小时后(仔细检查调用堆栈,添加了许多断点,...)我们发现,如果在绘制事件中存在访问冲突,Windows会捕获它,并继续运行应用程序。这是正常行为吗?Windows在绘制事件期间捕获异常/错误是否正常?有没有办法禁用它?(如果不是,则意味着我们必须始终在调试器中运行并在测试我们的代码时启用所

c++ - 未捕获 WM_PAINT 中的访问冲突

为了测试这个问题,我编写了一个最小的Windows应用程序。如果我在WM_PAINT处理程序中强制执行访问冲突,则此异常永远不会到达调试器。如果在没有调试器的情况下启动,访问冲突也不会出现。通常您应该会看到Windows错误报告对话框。再深入一点,似乎user32.dll中的某些东西捕获了所有传入的异常。这是正常行为吗?我能以某种方式控制它吗?捕获所有异常不是安全风险吗?至少它很烦人。这是Vista64上的32位和64位应用程序。在XP上,异常似乎按预期处理。其他窗口消息也有同样的问题。也许所有这些?WM_PAINT处理程序:caseWM_PAINT:hdc=BeginPaint(hW

Windows Aero : What color to paint to make "glass" appear?

我必须在客户区涂什么颜色才能使玻璃出现?我使用以下方法将表单框架扩展到客户区:DwmExtendFrameIntoClientArea(self.Handle,margins);我找不到任何来自Microsoft的官方文档,说明DWM将寻找什么颜色和/或alpha来替换玻璃。关于DwmExtendFrameInClientArea的文档甚至没有提到需要自定义颜色。只有传闻和神话甚至需要一种特殊的颜色。我能找到的最接近的是MSDN上的一个主题:CustomWindowFrameUsingDWMFortheextendedframestobevisible,theregionsunderl

java - paint() 和 paintcomponent() 的区别?

我试过这方面的教程,但我还是不太明白。基本上我的问题是哪种方法更好,为什么?我应该使用paint还是paintComponent?请尽量保持简单的答案,谢谢。 最佳答案 引用自paint()方法的文档Thismethodactuallydelegatestheworkofpaintingtothreeprotectedmethods:paintComponent,paintBorder,andpaintChildren....AsubclassthatjustwantstospecializetheUI(lookandfeel)de

python - "painting"使用 python/numpy 将一个数组转换为另一个数组

我正在编写一个库来处理Python中的注视跟踪,我对整个numpy/scipy世界相当陌生。本质上,我希望及时获取一组(x,y)值,并在这些坐标处将一些形状“绘制”到Canvas上。例如,形状可能是一个模糊的圆圈。我想到的操作与在Photoshop中使用画笔工具大致相同。我有一个交互式算法,可以将我的“画笔”修剪到图像的边界内,并将每个点添加到累加器图像,但它很慢(!),而且似乎可能有一种从根本上更简单的方法做这个。关于从哪里开始寻找的任何指示? 最佳答案 在您的问题中,您描述了一个高斯滤波器,scipy通过package为其提供支

Android Paint : . measureText() 与 .getTextBounds()

我正在使用Paint.getTextBounds()测量文本,因为我对获取要呈现的文本的高度和宽度感兴趣。但是,实际呈现的文本总是比.width()宽一点。的RectgetTextBounds()填写的信息.令我惊讶的是,我测试了.measureText(),并发现它返回一个不同的(更高的)值。我试了一下,发现是对的。为什么他们报告不同的宽度?如何正确获取高度和宽度?我的意思是,我可以使用.measureText(),但是我不知道我是否应该信任.height()由getTextBounds()返回.根据要求,这里是重现问题的最少代码:finalStringsomeText="Hello

Android Paint : . measureText() 与 .getTextBounds()

我正在使用Paint.getTextBounds()测量文本,因为我对获取要呈现的文本的高度和宽度感兴趣。但是,实际呈现的文本总是比.width()宽一点。的RectgetTextBounds()填写的信息.令我惊讶的是,我测试了.measureText(),并发现它返回一个不同的(更高的)值。我试了一下,发现是对的。为什么他们报告不同的宽度?如何正确获取高度和宽度?我的意思是,我可以使用.measureText(),但是我不知道我是否应该信任.height()由getTextBounds()返回.根据要求,这里是重现问题的最少代码:finalStringsomeText="Hello