Line 265... |
Line 265... |
265 |
SkPaint paint;
|
265 |
SkPaint paint;
|
266 |
SkCanvas canvas(*bm, SkSurfaceProps());
|
266 |
SkCanvas canvas(*bm, SkSurfaceProps());
|
267 |
|
267 |
|
268 |
paint.setBlendMode(SkBlendMode::kSrc);
|
268 |
paint.setBlendMode(SkBlendMode::kSrc);
|
269 |
paint.setColor(color);
|
269 |
paint.setColor(color);
|
270 |
sk_sp<SkImage> _image = SkImage::MakeFromBitmap(imgB); // Bottom
|
270 |
sk_sp<SkImage> _image = SkImages::RasterFromBitmap(imgB); // Bottom
|
271 |
canvas.drawImage(_image, imgBL.info().width(), pinfo.height - imgB.info().height(), SkSamplingOptions(), &paint);
|
271 |
canvas.drawImage(_image, imgBL.info().width(), pinfo.height - imgB.info().height(), SkSamplingOptions(), &paint);
|
272 |
_image = SkImage::MakeFromBitmap(imgBR); // Corner bottom right
|
272 |
_image = SkImages::RasterFromBitmap(imgBR); // Corner bottom right
|
273 |
canvas.drawImage(_image, pinfo.width - imgBR.info().width(), pinfo.height - imgBR.info().height(), SkSamplingOptions(), &paint);
|
273 |
canvas.drawImage(_image, pinfo.width - imgBR.info().width(), pinfo.height - imgBR.info().height(), SkSamplingOptions(), &paint);
|
274 |
_image = SkImage::MakeFromBitmap(imgR); // Right
|
274 |
_image = SkImages::RasterFromBitmap(imgR); // Right
|
275 |
canvas.drawImage(_image, pinfo.width - imgR.info().width(), imgTR.info().height(), SkSamplingOptions(), &paint);
|
275 |
canvas.drawImage(_image, pinfo.width - imgR.info().width(), imgTR.info().height(), SkSamplingOptions(), &paint);
|
276 |
_image = SkImage::MakeFromBitmap(imgTR); // Corner top right
|
276 |
_image = SkImages::RasterFromBitmap(imgTR); // Corner top right
|
277 |
canvas.drawImage(_image, pinfo.width - imgTR.info().width(), 0, SkSamplingOptions(), &paint);
|
277 |
canvas.drawImage(_image, pinfo.width - imgTR.info().width(), 0, SkSamplingOptions(), &paint);
|
278 |
_image = SkImage::MakeFromBitmap(imgT); // Top
|
278 |
_image = SkImages::RasterFromBitmap(imgT); // Top
|
279 |
canvas.drawImage(_image, imgTL.info().width(), 0, SkSamplingOptions(), &paint);
|
279 |
canvas.drawImage(_image, imgTL.info().width(), 0, SkSamplingOptions(), &paint);
|
280 |
_image = SkImage::MakeFromBitmap(imgTL); // Corner top left
|
280 |
_image = SkImages::RasterFromBitmap(imgTL); // Corner top left
|
281 |
canvas.drawImage(_image, 0, 0, SkSamplingOptions(), &paint);
|
281 |
canvas.drawImage(_image, 0, 0, SkSamplingOptions(), &paint);
|
282 |
_image = SkImage::MakeFromBitmap(imgL); // Left
|
282 |
_image = SkImages::RasterFromBitmap(imgL); // Left
|
283 |
canvas.drawImage(_image, 0, imgTL.info().height(), SkSamplingOptions(), &paint);
|
283 |
canvas.drawImage(_image, 0, imgTL.info().height(), SkSamplingOptions(), &paint);
|
284 |
_image = SkImage::MakeFromBitmap(imgBL); // Corner bottom left
|
284 |
_image = SkImages::RasterFromBitmap(imgBL); // Corner bottom left
|
285 |
canvas.drawImage(_image, 0, pinfo.height - imgBL.info().height(), SkSamplingOptions(), &paint);
|
285 |
canvas.drawImage(_image, 0, pinfo.height - imgBL.info().height(), SkSamplingOptions(), &paint);
|
286 |
return true;
|
286 |
return true;
|
287 |
}
|
287 |
}
|
288 |
|
288 |
|
289 |
Button::POSITION_t TPageInterface::calcImagePosition(PAGE_T *page, int width, int height, Button::CENTER_CODE cc, int line)
|
289 |
Button::POSITION_t TPageInterface::calcImagePosition(PAGE_T *page, int width, int height, Button::CENTER_CODE cc, int line)
|
Line 1247... |
Line 1247... |
1247 |
if (!alpha.empty())
|
1247 |
if (!alpha.empty())
|
1248 |
{
|
1248 |
{
|
1249 |
SkPaint paint;
|
1249 |
SkPaint paint;
|
1250 |
paint.setBlendMode(SkBlendMode::kSrcOver);
|
1250 |
paint.setBlendMode(SkBlendMode::kSrcOver);
|
1251 |
SkCanvas can(maskBm);
|
1251 |
SkCanvas can(maskBm);
|
1252 |
sk_sp<SkImage> _image = SkImage::MakeFromBitmap(base);
|
1252 |
sk_sp<SkImage> _image = SkImages::RasterFromBitmap(base);
|
1253 |
can.drawImage(_image, 0, 0, SkSamplingOptions(), &paint);
|
1253 |
can.drawImage(_image, 0, 0, SkSamplingOptions(), &paint);
|
1254 |
}
|
1254 |
}
|
1255 |
|
1255 |
|
1256 |
return maskBm;
|
1256 |
return maskBm;
|
1257 |
}
|
1257 |
}
|
Line 1266... |
Line 1266... |
1266 |
int rwidth = width;
|
1266 |
int rwidth = width;
|
1267 |
SkPaint paint;
|
1267 |
SkPaint paint;
|
1268 |
paint.setBlendMode(SkBlendMode::kSrc);
|
1268 |
paint.setBlendMode(SkBlendMode::kSrc);
|
1269 |
|
1269 |
|
1270 |
SkImageInfo info = bm->info();
|
1270 |
SkImageInfo info = bm->info();
|
1271 |
sk_sp<SkImage> im = SkImage::MakeFromBitmap(*bm);
|
1271 |
sk_sp<SkImage> im = SkImages::RasterFromBitmap(*bm);
|
1272 |
|
1272 |
|
1273 |
if (width <= 0)
|
1273 |
if (width <= 0)
|
1274 |
rwidth = info.width() + width;
|
1274 |
rwidth = info.width() + width;
|
1275 |
|
1275 |
|
1276 |
if (rwidth <= 0)
|
1276 |
if (rwidth <= 0)
|
Line 1305... |
Line 1305... |
1305 |
rheight = info.height() + height;
|
1305 |
rheight = info.height() + height;
|
1306 |
|
1306 |
|
1307 |
if (rheight <= 0)
|
1307 |
if (rheight <= 0)
|
1308 |
rheight = 1;
|
1308 |
rheight = 1;
|
1309 |
|
1309 |
|
1310 |
sk_sp<SkImage> im = SkImage::MakeFromBitmap(*bm);
|
1310 |
sk_sp<SkImage> im = SkImages::RasterFromBitmap(*bm);
|
1311 |
MSG_DEBUG("Width: " << info.width() << ", Height: " << rheight);
|
1311 |
MSG_DEBUG("Width: " << info.width() << ", Height: " << rheight);
|
1312 |
|
1312 |
|
1313 |
if (!allocPixels(info.width(), rheight, bm))
|
1313 |
if (!allocPixels(info.width(), rheight, bm))
|
1314 |
return false;
|
1314 |
return false;
|
1315 |
|
1315 |
|
Line 1343... |
Line 1343... |
1343 |
|
1343 |
|
1344 |
SkScalar alpha = 1.0 / 255.0 * opaque;
|
1344 |
SkScalar alpha = 1.0 / 255.0 * opaque;
|
1345 |
MSG_DEBUG("Calculated alpha value: " << alpha << " (oo=" << oo << ")");
|
1345 |
MSG_DEBUG("Calculated alpha value: " << alpha << " (oo=" << oo << ")");
|
1346 |
SkPaint paint;
|
1346 |
SkPaint paint;
|
1347 |
paint.setAlphaf(alpha);
|
1347 |
paint.setAlphaf(alpha);
|
1348 |
sk_sp<SkImage> _image = SkImage::MakeFromBitmap(*bm);
|
1348 |
sk_sp<SkImage> _image = SkImages::RasterFromBitmap(*bm);
|
1349 |
canvas.drawImage(_image, 0, 0, SkSamplingOptions(), &paint);
|
1349 |
canvas.drawImage(_image, 0, 0, SkSamplingOptions(), &paint);
|
1350 |
bm->erase(SK_ColorTRANSPARENT, {0, 0, w, h});
|
1350 |
bm->erase(SK_ColorTRANSPARENT, {0, 0, w, h});
|
1351 |
*bm = ooButton;
|
1351 |
*bm = ooButton;
|
1352 |
return true;
|
1352 |
return true;
|
1353 |
}
|
1353 |
}
|