@BobHanlon answer is an amazing replication. I post this to illustrate customizability:
trn[a_, s_] :=
Module[{tr = AASTriangle[Pi/2, a, s], sd, s1, s2, s3, txt, ang, dis},
sd = {s1, s2, s3} =
SortBy[Subsets[tr[[1]], {2}], N[EuclideanDistance @@ #] &];
ang = First@Cases[tr[[1]], {_?(#1 != 0 &), 0}];
dis = 0.2 {#, #} &@(EuclideanDistance @@ s1);
txt = MapThread[{Black,
Text[Style[#1, 20], Total@#2/2, #3]} &, {{"adjacent side (= x)",
Rotate["opposite side (=y)", Pi/2],
Rotate["hypotenuse (=z)", -a]},
sd, {{0, 2}, {2, 0}, {-0.4, -0.4}}}];
Graphics[{White, EdgeForm[Black], tr,
Rectangle[{0, 0}, dis], {Black,
Circle[ang, dis, {Pi, Pi - a}]}, {Black,
Text[Style["\[Theta]",
20], (1.2 dis {Cos[Pi - a/2], Sin[Pi - a/2]} + ang)]}, txt}]
]
Note of angle
Manipulate[trn[an, 2], {an, Pi/3.9, Pi/3}]

AASTriangle
and all the*Traingle
family of functions. $\endgroup$