/// <summary> /// Масштабировать ячейку подписи /// </summary> private static ICellElementMicrostation SignatureScale(ICellElementMicrostation signatureCell, RangeMicrostation signatureRange) => new PointMicrostation(signatureRange.Width / signatureCell.Range.Width * StampSettingsMicrostation.CompressionRatioText, signatureRange.Height / signatureCell.Range.Height * StampSettingsMicrostation.CompressionRatioText). Map(scaleFactor => GetScalePoint(signatureRange). Map(scalePoint => signatureCell.ScaleAll(scalePoint, scaleFactor)));
/// <summary> /// Повернуть ячейку подписи /// </summary> private static ICellElementMicrostation SignatureRotate(ICellElementMicrostation signatureCell, bool isVertical) => signatureCell. WhereContinue(_ => isVertical, okFunc: rotatePoint => signatureCell.Rotate(signatureCell.Range.OriginCenter, 90), badFunc: _ => signatureCell);
protected StampMicrostation(StampSettings stampSettings, ICellElementMicrostation stampCellElement, SignaturesSearching signaturesSearching) : base(stampSettings, signaturesSearching) { StampCellElement = stampCellElement ?? throw new ArgumentNullException(nameof(stampCellElement)); }
/// <summary> /// Переместить ячейку подписи /// </summary> private static ICellElementMicrostation SignatureMove(ICellElementMicrostation signatureCell, RangeMicrostation signatureRange) => signatureRange.OriginCenter. Subtract(signatureCell.Range.OriginCenter). Map(signatureCell.Move);
public StampFullMicrostation(ICellElementMicrostation stampCellElement, StampSettings stampSettings, SignaturesSearching signaturesSearching) : base(stampSettings, stampCellElement, signaturesSearching) { }