1C: рдХрдВрдкрдиреА рдЖрдХрд╛рд░ рдмрджрд▓рдиреЗ рдФрд░ рд╡реЙрдЯрд░рдорд╛рд░реНрдХрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдирд┐рдпрдорд┐рдд рд╕рд╛рдзрди рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЕрдХреНрд╕рд░ рдорд╛рдВрдЧ рдореЗрдВ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдСрдирд▓рд╛рдЗрди рд╕реНрдЯреЛрд░ рдореЗрдВ, рдЬрдм рд╕рд╛рдорд╛рди 1 рд╕реА рд╕реЗ рдлреЛрдЯреЛ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд╣рд▓реЗ, рд╡реЗ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд┐рд╕реНрдХ рдкрд░ рдлреЛрдЯреЛ рдЕрдкрд▓реЛрдб рдХрд░рддреЗ рдереЗ рдФрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рдереЗред рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдореЗрдВ рд▓рдЪреАрд▓рд╛рдкрди рдФрд░ рдЧрддрд┐ рдирд╣реАрдВ рд╣реИ, рд╕рд╛рде рд╣реА рд╕реБрд░рдХреНрд╖рд╛ рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдБ рднреА рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдФрд░ рдбрд┐рд╕реНрдХ рдкрд░ рдЕрд╕реНрдерд╛рдпреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, .рдиреЗрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рдлрд╛рдЗрд▓реЗрдВ рдмрдирд╛рдП рдмрд┐рдирд╛ рдореЗрдореЛрд░реА рдореЗрдВ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рджреМрд░рд╛рди, рд╕рднреА System.Drawing рдХрдХреНрд╖рд╛рдПрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ, рдЬреЛ рд╡рд┐рдзрд┐ рдореЗрдВ рд▓рдЪреАрд▓рд╛рдкрди рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ рдЖрдк рдирд┐рдпрдорд┐рдд рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рднреА рдкреНрд░рднрд╛рд╡ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ .net рдлреНрд░реЗрдорд╡рд░реНрдХ 4.0 рдФрд░ 1C .Net рдкреБрд▓ 4 рдХреЗ рд╕рд╛рде рдЗрд╕рдХреЗ рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдкреНрд░рд╛рд░рдВрдн
рдЖрд░рдВрднреАрдХрд░рдг рдХреЛрдб 1C рдХреЗ рдЕрдВрджрд░ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ .Net рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░ рд╣реИ рдФрд░ System.Drawing 4 рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ:
("Elisy.NetBridge4"); AddIn = New("AddIn.ElisyNetBridge4"); net = AddIn.GetNet(); net.LoadAssembly("System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a");
рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХреЗ рдмреАрдЪ рдХрдирд╡рд░реНрдЯ рдХрд░реЗрдВ
.Net рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рдЕрдВрджрд░, рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдмрд┐рдЯрдореИрдк рд╡рд░реНрдЧ рдХреЗ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ 1 рд╕реА рдХреЗ рдЕрдВрджрд░, рдЪрд┐рддреНрд░ рдкреНрд░рдХрд╛рд░ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдкреНрд░рдХрд╛рд░ рдЫрд╡рд┐ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреЛ рдмрд┐рдЯрдореИрдк рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
1C рдХреА рддрд░рдл, рдмрд╛рдЗрдирд░реАрдбрд╛рдЯрд╛ () рд╡рд┐рдзрд┐ рдХреЛ рдЪрд┐рддреНрд░ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡реНрдпрд╛рдкрд╛рд░ рдкреНрд░рдмрдВрдзрди 10.3 рдХреЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд▓рд┐рдП, рдХреЛрдб рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
() (.) ...().(); = (); .(); ;
GetPicture рдлрд╝рдВрдХреНрд╢рди 1C-рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрд╛рдЗрдирд░реАрдбреЗрдЯрд╛ рдХреЛ рд▓реМрдЯрд╛рдПрдЧрд╛ред рдЗрд╕реЗ рдирд┐рдореНрди рдХреЛрдб рдХреЗ рд╕рд╛рде .Net рдкреНрд░рдХрд╛рд░ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
bytes = net.CallStatic("System.Convert", "FromBase64String", Base64String()); bitmap = net.New("System.Drawing.Bitmap", net.New("System.IO.MemoryStream", bytes));
рдЫрд╡рд┐ рдХрд╛ рдЖрдХрд╛рд░ рдмрджрд▓реЗрдВ
рдпрджрд┐ рдЕрдВрддрд┐рдо рдЫрд╡рд┐ рдЪреМрдбрд╝рд╛рдИ, рдКрдВрдЪрд╛рдИ рдХреЗ рдЖрдпрд╛рдо рдЬреНрдЮрд╛рдд рд╣реИрдВ рдФрд░ рдореВрд▓ рдмрд┐рдЯрдореИрдк рдЫрд╡рд┐ рд╣реИ, рддреЛ 1C рдореЗрдВ рдЖрдХрд╛рд░ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рд▓рдЧрднрдЧ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реЛрдЧрд╛:
outputBitmap = net.New("System.Drawing.Bitmap", width, height); g = net.CallStatic("System.Drawing.Graphics", "FromImage", outputBitmap); g.CompositingQuality = net.New("System.Drawing.Drawing2D.CompositingQuality").HighQuality; g.SmoothingMode = net.New("System.Drawing.Drawing2D.SmoothingMode").HighQuality; g.InterpolationMode = net.New("System.Drawing.Drawing2D.InterpolationMode").HighQualityBicubic; g.Clear(net.GetStatic("System.Drawing.Color", "WhiteSmoke")); sx = width / Bitmap.Width; sy = height / Bitmap.Height; scale = (sx, sy); g.DrawImage(bitmap, ((outputBitmap.Width - scale * bitmap.Width) / 2, 0), ((outputBitmap.Height - scale * bitmap.Height) / 2, 0), (scale * bitmap.Width, 0), (scale * bitmap.Height, 0)); width >= 100 height >= 100 (net, g, watermark, width, height); ;
рдХреЛрдб рдкреНрд░рдХрд╛рд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдХрд╛ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЖрдк рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд▓рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдВрддрд┐рдо рдЦрд╛рд▓реА рдЫрд╡рд┐ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдКрдВрдЪрд╛рдИ рдХреЗ рдЖрдпрд╛рдо рдХреЗ рд╕рд╛рдеред рдХреЙрд▓рд┐рдВрдЧ g.Clear рдЪрд┐рддреНрд░ рдХреА рдкреГрд╖реНрдарднреВрдорд┐ рдХреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд░рдВрдЧ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡реНрд╣рд╛рдЗрдЯрд╕реНрдореЛрдХ) рд╕реЗ рднрд░реЗрдЧрд╛ред рдпрджрд┐ рдореВрд▓ рдЫрд╡рд┐ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЖрдпрд╛рдореЛрдВ рдХреЛ рдирд╣реАрдВ рднрд░рддреА рд╣реИ, рддреЛ рд░рдВрдЧ рднрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдКрдВрдЪрд╛рдИ рдорд╛рдкрджрдВрдбреЛрдВ рдФрд░ рдореВрд▓ рдЫрд╡рд┐ рдХреА рдЪреМрдбрд╝рд╛рдИ рдФрд░ рдКрдВрдЪрд╛рдИ рдХреЗ рдЕрдиреБрдкрд╛рдд рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдореВрд▓ рдЫрд╡рд┐ рдкрд░рд┐рдгрд╛рдореА рдЫрд╡рд┐ рдкрд░ рдЖрд░реЛрдкрд┐рдд рд╣реЛрддреА рд╣реИред
рд╕рдВрд╕рд╛рдзрди-рдЧрд╣рди рдЬреА рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╡реЙрдЯрд░рдорд╛рд░реНрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЬреЛрдбрд╝реЗрдВ рдХреЛ рдпрд╣рд╛рдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдкрд╛рда рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╡реЙрдЯрд░рдорд╛рд░реНрдХ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЕрдВрдд рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХреЙрд▓ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реИ:
g.Dispose();
рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рднреА рдЖрдИрдбреАрд╕реЛрдкрдпреЛрдЧреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рд╕реНрдкреЛрдЬ рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реИ, рдЬрд┐рдирдХреА рдЕрдм рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ: рдмрд┐рдЯрдореИрдк, рдЖрдЙрдЯрдкреБрдЯ рдмрд┐рдЯрдореИрдк, рдкреНрд░рдХрд╛рд░ рдореЗрдореЛрд░реАрд╕реНрдЯреНрд░реАрдо рдХреЗ рдСрдмреНрдЬреЗрдХреНрдЯред
рд╡реЙрдЯрд░рдорд╛рд░реНрдХ рдУрд╡рд░рд▓реЗ
рд╡реЙрдЯрд░рдорд╛рд░реНрдХ рд╕рд┐рд╕реНрдЯрдо.рдЯреНрд░рд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рд╕реБрдкрд░рдЗрдореНрдкреЛрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрд┐рди рджреЛ рддрд░реАрдХреЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреА рд╡реЗ рдЬреА рдкрджреНрдзрддрд┐ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВред рдореЗрдЬрд╕реНрдЯреНрд░рд┐рдВрдЧ, рдЬреЛ рдЖрдкрдХреЛ рдЙрд╕ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рдЪрд┐рддреНрд░рдордп рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдЫрд╡рд┐ рдкрд░ рд▓рдЧрд╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВред
рд╡рд┐рдзрд┐ 1
рдкрд╣рд▓реА рд╡рд┐рдзрд┐ рдЫрд╡рд┐ рдХреЗ рдирд┐рдЪрд▓реЗ рднрд╛рдЧ рдореЗрдВ рд╡реЙрдЯрд░рдорд╛рд░реНрдХ рд▓рдЧрд╛рддреА рд╣реИред рдлрд╝реЙрдиреНрдЯ рдЖрдХрд╛рд░ 72 рдФрд░ рдиреАрдЪреЗ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рдЬрдм рддрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╡реЙрдЯрд░рдорд╛рд░реНрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЫрд╡рд┐ рдХреА рд╕реАрдорд╛рдУрдВ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рд▓рд╛рдЗрди рдХреЛ рджреЛ рдмрд╛рд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛: рдПрдХ рдкрд╛рд░рднрд╛рд╕реА рдХрд╛рд▓рд╛ рдмреНрд░рд╢ рдФрд░ рдПрдХ рдорд╛рдореВрд▓реА рдСрдлрд╕реЗрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдкрд╛рд░рднрд╛рд╕реА рд╕рдлреЗрдж рдмреНрд░рд╢ред

sizes = net.New("System.Collections.Generic.List", net.T("System.Int32")); sizes.Add(72); sizes.Add(36); sizes.Add(24); sizes.Add(16); sizes.Add(14); sizes.Add(12); sizes.Add(10); sizes.Add(8); sizes.Add(6); sizes.Add(4); crFont = null; crSize = net.New("System.Drawing.SizeF"); i = 0 8 crFont = net.New("System.Drawing.Font", "arial", sizes.get_Item(i), net.New("System.Drawing.FontStyle").Bold); crSize = g.MeasureString(Watermark, crFont); crSize.Width < width ; ; ; yPixlesFromBottom = (height * 0.05, 0); yPosFromBottom = ((height - yPixlesFromBottom) - (crSize.Height / 2)); xCenterOfImg = width / 2; StrFormat = net.New("System.Drawing.StringFormat"); StrFormat.Alignment = net.New("System.Drawing.StringAlignment").Center; semiTransBrush2 = net.New("System.Drawing.SolidBrush", net.CallStatic("System.Drawing.Color", "FromArgb", 153, 0, 0, 0)); g.DrawString(watermark, crFont, semiTransBrush2, net.New("System.Drawing.PointF", (xCenterOfImg + 1, 0), (yPosFromBottom + 1, 0)), StrFormat); semiTransBrush = net.New("System.Drawing.SolidBrush", net.CallStatic("System.Drawing.Color", "FromArgb", 153, 255, 255, 255)); g.DrawString(watermark, crFont, semiTransBrush, net.New("System.Drawing.PointF", (xCenterOfImg, 0), (yPosFromBottom, 0)), StrFormat);
рд╡рд┐рдзрд┐ 2
рджреВрд╕рд░реА рд╡рд┐рдзрд┐ рдореВрд▓ рдЫрд╡рд┐ рдкрд░ рддрд┐рд░рдЫреЗ рд╡реЙрдЯрд░рдорд╛рд░реНрдХ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдЧреАред рд╕реМрд╡реЗрдВ рдлрд╝реЙрдиреНрдЯ рдЖрдХрд╛рд░ рд╕реЗ рдиреАрдЪреЗ, рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдПрдХ рдЫрд╡рд┐ рдореЗрдВ рдлрд┐рдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдкреНрд░рдпрд╛рд╕ рд╕рдлрд▓ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдПрдХ рдкрд╛рдпрд╛ рдХреЛрдг рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝реЙрдиреНрдЯ рдХреЗ рд╕рд╛рде, рдПрдХ рд░реЗрдЦрд╛ рдХреЛ рдереЛрдбрд╝рд╛ рджреГрд╢реНрдпрдорд╛рди рд╕рдлреЗрдж рдмреНрд░рд╢ рдХреЗ рд╕рд╛рде рдЦреАрдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИред
font = net.New("System.Drawing.Font", "Tahoma", 40); color = net.CallStatic("System.Drawing.Color", "FromArgb", 25, 255, 255, 255); tangent = height / width; angle = ATan(tangent) * (180 / 3.1415); halfHypotenuse = Sqrt((Height * Height) + (Width * Width)) / 2; i2 = 0 99 i = 100 - i2; font = net.New("System.Drawing.Font", "Tahoma", i, net.New("System.Drawing.FontStyle").Bold); sizef = g.MeasureString(watermark, font, net.GetStatic("System.Int32", "MaxValue")); sin = Sin(angle * (3.1415 / 180)); cos = Cos(angle * (3.1415 / 180)); opp1 = sin * sizef.Width; adj1 = cos * sizef.Height; opp2 = sin * sizef.Height; adj2 = cos * sizef.Width; opp1 + adj1 < height opp2 + adj2 < width ; ; ; stringFormat = net.New("System.Drawing.StringFormat"); stringFormat.Alignment = net.New("System.Drawing.StringAlignment").Center; stringFormat.LineAlignment = net.New("System.Drawing.StringAlignment").Center; g.SmoothingMode = net.New("System.Drawing.Drawing2D.SmoothingMode").AntiAlias; g.RotateTransform((angle, 0)); g.DrawString(watermark, font, net.New("System.Drawing.SolidBrush", color), net.New("System.Drawing.PointF", (halfHypotenuse, 0), 0), stringFormat);
рджреВрд╕рд░реА рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг рдЪрд┐рддреНрд░:
