Fixed
Status Update
Comments
ro...@android.com <ro...@android.com> #2
[Comment deleted]
ro...@android.com <ro...@android.com> #3
From the look of the system bar, your device is not running ICS, it's running Honeycomb. The attached screenshot shows what the API demo looks like on an ICS device.
se...@gmail.com <se...@gmail.com> #4
Attach another screenshot, 1.png, on ICS. It looks still weird.
ak...@gmail.com <ak...@gmail.com> #5
The bug is still there. I tried on multiple devices:
- LGE Nexus 5X, Android 8.0.0, Build number OPR6.170623.013
- Motorola Nexus 6, Android 5.1, Build number LMY47I
- Samsung Galaxy S5, SM-G900F, Android 6.0.1, Build number MMB29M.G900FXXS1CQC1
- Samsung Galaxy Note 4, SM-N910F, Android 6.0.1, Build number MMB29M.N910FXXS1DQA1
- Samsung Galaxy S3, GT-I9300, Android 4.3, Build number JSS15J.I9300XXUGPE1
The result is the same on all the devices. It doesn't look like it's a device specific issue.
I am using two paint objects. One of them is used to draw the blue text and the other to draw the gray text (See attached screenshot without hardware acceleration).
I want the blue text to appear always on top of the gray text.
Thus, the blue paint has no xfermode and the gray paint has a `new PorterDuffXfermode(PorterDuff.Mode.DST_OVER)` as a xfermode.
I am using the `Canvas::drawTextOnPath(String text, Path path, float hOffset, float vOffset, Paint paint)`
When hardware acceleration is enabled the gray text is not shown at all.
Is there hope this can be fixed anytime soon?
I am at your disposal for any details you might need.
Thanks in advance.
- LGE Nexus 5X, Android 8.0.0, Build number OPR6.170623.013
- Motorola Nexus 6, Android 5.1, Build number LMY47I
- Samsung Galaxy S5, SM-G900F, Android 6.0.1, Build number MMB29M.G900FXXS1CQC1
- Samsung Galaxy Note 4, SM-N910F, Android 6.0.1, Build number MMB29M.N910FXXS1DQA1
- Samsung Galaxy S3, GT-I9300, Android 4.3, Build number JSS15J.I9300XXUGPE1
The result is the same on all the devices. It doesn't look like it's a device specific issue.
I am using two paint objects. One of them is used to draw the blue text and the other to draw the gray text (See attached screenshot without hardware acceleration).
I want the blue text to appear always on top of the gray text.
Thus, the blue paint has no xfermode and the gray paint has a `new PorterDuffXfermode(PorterDuff.Mode.DST_OVER)` as a xfermode.
I am using the `Canvas::drawTextOnPath(String text, Path path, float hOffset, float vOffset, Paint paint)`
When hardware acceleration is enabled the gray text is not shown at all.
Is there hope this can be fixed anytime soon?
I am at your disposal for any details you might need.
Thanks in advance.
Description
Run ApiDemo in ICS device->select "Graphic"->select "Xfermode"
What happened:
Xfermode doesn't work correctly when hardware acceleration is on. Actually, most of fuctions of Canvas with Xfermode don't work correctly. For example:
Canvas.drawColor(color, mode), Canvas.drawBitmap(bitmap, left, top, paint) with a paint contains Xfermode.
I've checked android's blog. And it doesn't mention that those functions can't be use in hardware acceleration. Though it works fine after calling setLayerType(View.LAYER_TYPE_SOFTWARE, null), I still hope this issue can be solve without doing this.