addWaterMarkImage method

Future<Image> addWaterMarkImage(
  1. Image wmImg, {
  2. WMLocation location = WMLocation.tile,
  3. double opacity = 0.3,
  4. double sizeScale = 1,
  5. double vOffset = 20,
  6. double hOffset = 20,
  7. double angle = 0,
  8. bool srcDispose = false,
  9. bool wmDispose = false,
})

Image Watermark Extension

Implementation

Future<Image> addWaterMarkImage(
  Image wmImg, {
  WMLocation location = WMLocation.tile,
  double opacity = 0.3,
  double sizeScale = 1,
  double vOffset = 20,
  double hOffset = 20,
  double angle = 0,
  bool srcDispose = false,
  bool wmDispose = false,
}) async {
  final PictureRecorder recorder = PictureRecorder();
  final Canvas canvas = Canvas(recorder, rect());
  canvas.drawImage(
      this, Offset.zero, Paint()..filterQuality = FilterQuality.high);
  _watermakrLayer(
      canvas, wmImg, location, opacity, sizeScale, vOffset, hOffset, angle);
  if (srcDispose) dispose();
  if (wmDispose) wmImg.dispose();
  final Picture picture = recorder.endRecording();
  return picture.toImageSync(width, height);
}