Cropping um retângulo cruzado da imagem usando c #

O que eu quero fazer é basicamente cortar um retângulo de uma imagem. No entanto, deve satisfazer alguns casos especiais:

Eu quero cortar um retângulo angular na imageEu não quero girar a imagem e cortar um retângulo Se o corte exceder o tamanho da imagem, não quero cortar uma cor de fundo vazi

Eu quero cortar da parte de trás do ponto inicial, que terminará no ponto inicial quando o tamanho do retângulo for concluído. Sei que não sabia explicar direito, por isso, se mostrar o que quero visualmente:

O ponto azul é o ponto de partida e a seta mostra a direção do corte. Quando o corte excede as bordas da imagem, ele volta à parte posterior do ponto inicial, tanto quanto, quando a largura e a altura do retângulo terminadas, o final do retângulo estará no ponto inicia

Além disso, é a pergunta anterior que fiz:

Como cortar um retângulo cruzado de uma imagem usando c #?

Nesta questão, não pude prever que um problema pode ocorrer sobre as dimensões da imagem, por isso não pedi. Mas agora existe o caso 3. Exceto o caso três, essa é exatamente a mesma pergunta. Como posso fazer isso, alguma sugestão?

questionAnswers(1)

yourAnswerToTheQuestion