Я реализую функцию захвата экрана в ландшафтном режиме. Однако когда я делаю снимок после вращения по часовой стрелке, с правой стороны появляется черная полоса, а когда я делаю снимок после вращения против часовой стрелки, с левой стороны появляется черная полоса. Как я могу решить эту проблему? Я не могу определить причину.
ниже моего кода:
Я реализую функцию захвата экрана в ландшафтном режиме. Однако когда я делаю снимок после вращения по часовой стрелке, с правой стороны появляется черная полоса, а когда я делаю снимок после вращения против часовой стрелки, с левой стороны появляется черная полоса. Как я могу решить эту проблему? Я не могу определить причину. ниже моего кода: [code]Image.Plane[] planes = image.getPlanes(); ByteBuffer buffer = planes[0].getBuffer(); int pixelStride = planes[0].getPixelStride(); int rowStride = planes[0].getRowStride(); int rowPadding = rowStride - pixelStride * mWidth;
// write bitmap to a file fos = new FileOutputStream(mStoreDir + "screen.jpg"); bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos); [/code] и пример скриншота ниже: [img]https://i.sstatic.net/2ASzoSM6.jpg[/img] < /p> [img]https://i.sstatic.net/ky3Uhhb8.jpg[/img]