草庐IT

painting

全部标签

C++ 和 Qt : Paint Program - Rendering Transparent Lines Without Alpha Joint Overlap

我已经开始创建一个与绘图板交互的绘图程序。根据笔在数位板上的压力,我更改了正在绘制的线条的alpha值。该机制有效。细线看起来不错,看起来像一个真实的素描。但是因为我在两点之间画线(就像在Qt涂鸦教程中一样)来绘画,所以线接头之间有一个alpha重叠,并且对于粗笔画来说非常明显。这是线对线连词的效果:如您所见,线段之间存在难看的alpha混合。为了解决这个问题,我决定使用QPainterPath来渲染线条。这有两个问题:长的、连续的、粗的路径很快就会滞后于程序。由于路径是相连的,所以它作为一个路径起作用,所以对alpha值的任何更改都会影响整个路径(我不想这样做,因为我想保留混合效果)

Android:这个 Paint 标志是做什么的:DEV_KERN_TEXT_FLAG?

我找不到有关此标志用途的任何信息。有人知道吗?谢谢 最佳答案 Kerning是一种打印技术。 关于Android:这个Paint标志是做什么的:DEV_KERN_TEXT_FLAG?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5156477/

java - 用 Paint 给位图着色?

我正在尝试创建一个为位图着色的函数,这有效...imgPaint=newPaint();imgPaint.setColorFilter(newLightingColorFilter(color,0));//whenimageisbeingdrawncanvas.drawBitmap(img,matrix,imgPaint);但是,当必须不断(每一帧)绘制位图时,我开始看到屏幕滞后,因为这在设置滤色器之前没有发生,我相信它在我需要时每次都应用滤镜绘制的Canvas。有没有一种方法可以对位图进行一次绘制并使其永久更改?感谢任何帮助:) 最佳答案

android - 如何在 Paint android 应用程序中应用带点的画笔颜色?

当用户点击红色等特定颜色时,我使用以下代码应用字体颜色。mPaint.setColor(getResources().getColor(R.color.color2));color.xml文件中的color2是#FF3C00现在我在应用以下颜色时遇到问题。我在我的应用程序中使用Canvas在触摸它时绘制油漆,我想在Canvas上绘制类似附加屏幕的东西。我能画出来,但它看起来像纯色(我的意思是完整的圆圈,而不是里面的点)请帮我找到这个。 最佳答案 您可以使用BitmapShader为了实现这一点..这是示例代码。试试这个代码,我希望它

android - W/PicturePileLayerContent:警告 : painting PicturePile without content

我在logcat中收到此警告,我在网上搜索但没有找到原因或我应该如何处理它?这说明什么?这是logcat,logcat中没有其他异常02-2315:17:52.19029817-30304/com.astrolabe.iremoteW/PicturePileLayerContent﹕Warning:paintingPicturePilewithoutcontent!02-2315:17:52.19029817-30304/com.astrolabe.iremoteW/PicturePileLayerContent﹕Warning:paintingPicturePilewithoutco

android - Android中一些Paint常量的含义

Android中有一些Paint常量,我找不到太多相关信息。谁能帮我解释一下这些标志:LINEAR_TEXT_FLAGSUBPIXEL_TEXT_FLAGFILTER_BITMAP_FLAG“亚像素”模式是接近于ClearType还是完全不同? 最佳答案 SUBPIXEL确实是针对亚像素抗锯齿的,目前安卓不支持。设置此标志将无效。FILTER_BITMAP用于在转换位图(例如缩放)时将双线性过滤应用于位图。启用FILTER_BITMAP通常是个好主意,除非速度(远)比质量重要。LINEAR_TEXT用于以64像素的文本大小绘制文本,

Android:Paint.breakText(...) 不准确吗?

我有一个View,它绘制了一个矩形,其中有一行文本。View使用中断文本来确保没有文本延伸到矩形之外;它忽略任何文本。这对某些字符很有效,但通常由'l'和'f'组成的字符串会延伸到矩形之外。所以,我需要在这里进行健全性检查:我的以下代码中是否存在明显的缺陷,或者Paint.breakText(...)是否可能不准确?publicvoidonDraw(Canvascanvas){intMARGIN=1;intBORDER_WIDTH=1;Paintp=newPaint();p.setAntiAlias(true);p.setTextSize(12);p.setTypeface(Typef

java - Android 中 Paint.StrokeWidth = 1 的 drawLine 问题

我想我遇到了一个讨厌的错误。问题是几乎是水平线具有轻微的渐变并使用StrokeWidth=1的Paint不是绘制,例如:publicclassMyControlextendsView{publicMyControl(Contextcontext){super(context);//TODOAuto-generatedconstructorstub}@OverrideprotectedvoidonDraw(Canvascanvas){super.onDraw(canvas);Paintpen=newPaint();pen.setColor(Color.RED);pen.setStroke

java - Android - paint.setShadowLayer 忽略 shadowColor

我遇到了阴影颜色问题,setShadowLayer方法忽略了shadowColor(此处我在代码中指定了Color.RED)而不是setShadowLayer正在采用绘画颜色(此处为Color.argb(255,50,153,187))。以下是我的绘画设置,并找到附图以供引用,谢谢paint.setAntiAlias(true);paint.setColor(Color.argb(255,50,153,187));paint.setStyle(Paint.Style.STROKE);paint.setStrokeJoin(Paint.Join.ROUND);paint.setStrok

Android:用于斜体呈现字体的 Paint 对象上的 measureText

我需要计算客户提供的所有文本的长度(以像素为单位)。问题是他们只提供了一种常规字体,而斜体样式必须由Android呈现。一个已知的Android错误是,对于斜体(呈现为斜体)字体,未正确计算TextView的宽度并且文本的末尾被剪切。你知道如何正确计算这些斜体文本的长度吗?到目前为止,我已经尝试了measureText和getTextWidths方法,但我认为该错误出在Android源代码中,因为斜体文本和普通文本的长度相同。我发现当没有斜体字体并且必须渲染时,然后在TextView源代码中,在TextPaint对象上设置了skewX参数。它的值为-0.25f。你知道这个参数是什么吗?