나사로, Codetyphon 및 Delphi 용 수정 된 Igdiplus 라이브러리.
델파이를위한 무료 및 오픈 소스 라이브러리. 자연스러운 파스칼 친화적 인 코드로 복잡한 GDI+ 응용 프로그램을 빠르고 쉽게 구현할 수 있습니다.
저자 : Boian Mitov
홈페이지 : http://mitov.com/products/igdi+#overview
http://mitov.com/products/igdi+#license
이 소프트웨어는 명시 적 또는 묵시적 보증없이 'AS-IS'가 제공됩니다. 어떠한 경우에도 저자는이 소프트웨어 사용으로 인한 손해에 대해 책임을지지 않습니다.
상업용 응용 프로그램을 포함하여 모든 목적 으로이 소프트웨어를 사용할 수있는 권한이 부여되고 다음과 같은 제한 사항에 따라이 소프트웨어를 변경하고 자유롭게 재분배 할 수 있습니다.
이 소프트웨어의 기원을 잘못 표현해서는 안되며, 원래 소프트웨어를 작성했다고 주장해서는 안됩니다. 이 소프트웨어를 제품에 사용하는 경우 제품 문서의 승인이 높아지지만 필요하지 않습니다.
변경된 소스 버전은 명확하게 표시되어야하며 원래 소프트웨어로 잘못 표현되어서는 안됩니다.
이 통지는 소스 배포에서 제거되거나 변경 될 수 없습니다.
비용없이 제한없이 원하는대로 내 코드로 수행 할 수 있습니다.
IGDIPlusHelpers.pas , IGDIPlusAPI_FPC.inc , IGDIPlusAPI_DCC.inc .원래 Igdiplus 데모 애플리케이션은 나사로로 편집되었습니다.

추가 데모 - 컬러 휠

데모 1 주요 절차.
procedure TForm1.FormPaint (Sender: TObject);
var
AGraphics : IGPGraphics;
AFont : IGPFont;
ALeftTopCorner : TPointF;
ARect : TIGPRectF;
ARect1 : TIGPRectF;
APath : IGPGraphicsPath;
begin
AGraphics := TIGPGraphics.Create( Canvas );
AGraphics.SmoothingMode := SmoothingModeAntiAlias;
AGraphics.TextRenderingHint := TextRenderingHintAntiAlias;
ALeftTopCorner := TPointF.Create( 20 , 20 );
AFont := TIGPFont.Create( ' Microsoft Sans Serif ' , 40 , [ fsBold ] );
ARect := AGraphics.GetStringBoundingBoxF( ' Welcome to IGDI+ ' , AFont, ALeftTopCorner );
ARect1 := GPInflateRectF( ARect, 10 , 10 );
// Draw a fancy rounded rectangle.
AGraphics.DrawRoundRectangleF(
TIGPPen.Create( TIGPLinearGradientBrush.Create( GPInflateRectF( ARect1, 2 , 2 ), aclRed, aclBlue, LinearGradientModeVertical ), 4 ),
TIGPPathGradientBrush.Create(
TIGPGraphicsPath.Create().AddRoundRectangleF( ARect1, TIGPSizeF.Create( 20 , 20 ) )
)
.SetInterpolationColorArrays( [ aclGreen, aclCyan, aclYellow ], [ 0 , 0.3 , 1 ] )
.SetCenterPointF( TPointF.Create( 250 , 50 ))
.SetFocusScales( 0.87 , 0.2 ),
ARect1, TIGPSizeF.Create( 20 , 20 ) );
// Draw a text with semitransparent shadow.
AGraphics.DrawStringF( ' Welcome to IGDI+ ' ,
AFont,
TPointF.Create( 23 , 23 ),
TIGPSolidBrush.Create( MakeARGBColor( 50 , aclBlack )) )
.DrawStringF( ' Welcome to IGDI+ ' ,
AFont,
ALeftTopCorner,
TIGPLinearGradientBrush.Create( ARect, aclRed, aclBlue, LinearGradientModeForwardDiagonal ));
// Draw a closed curve.
AGraphics.DrawClosedCurveF( TIGPPen.Create( aclRed, 3 ), TIGPSolidBrush.Create( aclBlue ),
[
TPointF.Create( 60 , 160 ),
TPointF.Create( 150 , 180 ),
TPointF.Create( 200 , 140 ),
TPointF.Create( 180 , 220 ),
TPointF.Create( 120 , 200 ),
TPointF.Create( 80 , 260 )
] );
// Draw a semitransparent star.
APath := TIGPGraphicsPath.Create();
APath.AddLinesF(
[
TPointF.Create( 75 , 0 ),
TPointF.Create( 100 , 50 ),
TPointF.Create( 150 , 50 ),
TPointF.Create( 112 , 75 ),
TPointF.Create( 150 , 150 ),
TPointF.Create( 75 , 100 ),
TPointF.Create( 0 , 150 ),
TPointF.Create( 37 , 75 ),
TPointF.Create( 0 , 50 ),
TPointF.Create( 50 , 50 )
] );
AGraphics.TranslateTransform( 420 , 30 )
.FillPath(
TIGPPathGradientBrush.Create( APath )
.SetCenterColor( MakeColor( 200 , 255 , 0 , 0 ))
.SetSurroundColors(
[
MakeColor( 80 , 0 , 0 , 0 ),
MakeColor( 80 , 0 , 255 , 0 ),
MakeColor( 80 , 0 , 0 , 255 ),
MakeColor( 80 , 255 , 255 , 255 ),
MakeColor( 80 , 0 , 0 , 0 ),
MakeColor( 80 , 0 , 255 , 0 ),
MakeColor( 80 , 0 , 0 , 255 ),
MakeColor( 80 , 255 , 255 , 255 ),
MakeColor( 80 , 0 , 0 , 0 ),
MakeColor( 80 , 0 , 255 , 0 )
] ),
APath );
// Draw rotated ellipse.
AGraphics.ResetTransform()
.TranslateTransform( 300 , 160 )
.RotateTransform( 30 )
.DrawEllipseF(
TIGPPen.Create( aclRed, 3 ),
TIGPLinearGradientBrush.Create( TPointF.Create( 0 , 0 ), TPointF.Create( 20 , 20 ), aclYellow, aclGreen )
.SetWrapMode( WrapModeTileFlipX ),
0 , 0 , 200 , 80 );
end ; 패키지 디렉토리에는 Delphi XE2 -10.3 Rio 용 패키지가 있습니다. 적절한 패키지 (DPK 파일)를 설치 한 다음 IDE 옵션에서 IGDIPlus.pas 파일을 사용하여 라이브러리 경로 디렉토리에 추가하십시오.
두 가지 옵션이 있습니다.
packagesLazaruslazigdiplus.lpk 패키지를 작성하고 설치하십시오.LazIGDIPlus 추가하십시오.IGDIPlus.pas 파일을 사용하여 디렉토리를 추가하십시오 -> 경로 -> 기타 장치 파일 . 나사로의 경우에 진행하면 설치 패키지가있는 파일 만 packagesCodeTyphonlazigdiplus.ctpkg 입니다.
23.01.2020
Delphi XE2 및 XE3 지원.
Delphi XE2 -10.3 RIO 용 패키지가 추가되었습니다.
XE2 용 기본 데모, XE2 및 XE7 용 컬러 휠 데모를 추가했습니다.
IGDIPLUSHELPERS : 해치 스타일 변환과 관련된 몇 가지 헬퍼 루틴.
19.01.2020
나사로 및 코디 폰을위한 패키지를 추가했습니다.
15.01.2020
무료 파스칼 지원을 갖춘 초기 릴리스.