getDefulteSize method
EdgeInsets
getDefulteSize(
- dynamic paddBottomLeft,
- dynamic paddBottomRight,
- dynamic paddRightTop,
- dynamic paddRightBottom,
- dynamic width,
- dynamic heiget,
判断图片内容填充区域最小范围
Implementation
EdgeInsets getDefulteSize(paddBottomLeft, paddBottomRight, paddRightTop,
paddRightBottom, width, heiget) {
var left = paddBottomLeft > 0 ? paddBottomLeft : width / 2;
var top = paddRightTop > 0 ? paddRightTop : heiget / 2;
var right = ((width ?? 0) - paddBottomRight) > 0
? (width ?? 0) - paddBottomRight
: width / 2;
var bottom = ((heiget ?? 0) - paddRightBottom) > 0
? (heiget ?? 0) - paddRightBottom
: heiget / 2;
var pWidth = left + right;
var pHeigth = top + bottom;
var p = (heiget / 2) - 6 > 0 ? (heiget / 2) - 6 : 0.0;
// log("---宽高情况 P$pWidth,$pHeigth- image-w $width,$heiget------->");
// log("---left$left-top$top-right$right-bottom$bottom-->");
if (pWidth <= width && pHeigth > heiget) {
return EdgeInsets.fromLTRB((width / 2), top, (width / 2), bottom);
}
//宽高不做处理,设置整体padding为原始图片的大小。
if (pWidth <= width && pHeigth <= heiget) {
return EdgeInsets.fromLTRB((width / 2), p, (width / 2), p);
}
if (pWidth > width && pHeigth <= heiget) {
return EdgeInsets.fromLTRB(left, p, right, p);
} else {
return EdgeInsets.fromLTRB(left, top, right, bottom);
}
}