下揃え 
Procedure ajustObjectBottom;
var {変数宣言部}
gBotAxis: real; {gBotAxisは実数}
gCount:integer; {gCountは整数}
p1X, p1Y, p2X, p2Y:REAL; {p1X, p1Y, p2X, p2Yは実数}
{サブルーチン部}
function getBotAxis( pObj:Handle ):boolean;
begin
gCount := gCount +1;
GetBBox( pObj, p1X, p1Y, p2X, p2Y );{p1:左上、p2:右下}
if gBotAxis > p2Y then
gBotAxis := p2Y;
end;
function doMove( pObj:Handle ):boolean;
begin
GetBBox( pObj, p1X, p1Y, p2X, p2Y );
HMove(pObj, 0, gBotAxis - p2Y);
end;
{main}
begin
gCount := 0;
gBotAxis := 10000000000.0;
ForEachObjectInLayer(getBotAxis , 2, 0, 4 );
if gCount > 1 then
ForEachObjectInLayer(doMove , 2, 0, 4 );
end;
run ( ajustObjectBottom );
整列コマンド 
下揃え
Procedure ajustObjectBottom;
var
gBotAxis: real;
gCount:integer;
p1X, p1Y, p2X, p2Y:REAL;
function getBotAxis( pObj:Handle ):boolean;
begin
gCount := gCount +1;
GetBBox( pObj, p1X, p1Y, p2X, p2Y );
if gBotAxis > p2Y then
gBotAxis := p2Y;
end;
function doMove( pObj:Handle ):boolean;
begin
GetBBox( pObj, p1X, p1Y, p2X, p2Y );
HMove(pObj, 0, gBotAxis - p2Y);
end;
{main}
begin
gCount := 0;
gBotAxis := 10000000000.0;
ForEachObjectInLayer(getBotAxis , 2, 0, 4 );
if gCount > 1 then
ForEachObjectInLayer(doMove , 2, 0, 4 );
end;
run ( ajustObjectBottom );
上揃え
Procedure ajustObjectTop;
var
gBotAxis: real;
gCount:integer;
p1X, p1Y, p2X, p2Y:REAL;
function getBotAxis( pObj:Handle ):boolean;
begin
gCount := gCount +1;
GetBBox( pObj, p1X, p1Y, p2X, p2Y );
if gBotAxis < p1Y then
gBotAxis := p1Y;
end;
function doMove( pObj:Handle ):boolean;
begin
GetBBox( pObj, p1X, p1Y, p2X, p2Y );
HMove(pObj, 0,gBotAxis - p1y);
end;
{main}
begin
gCount := 0;
gBotAxis := -10000000000.0;
ForEachObjectInLayer(getBotAxis , 2, 0, 4 );
if gCount > 1 then
ForEachObjectInLayer(doMove , 2, 0, 4 );
end;
run ( ajustObjectTop );
右揃え
Procedure ajustObjectR;
var
gBotAxis: real;
gCount:integer;
p1X, p1Y, p2X, p2Y:REAL;
function getBotAxis( pObj:Handle ):boolean;
begin
gCount := gCount +1;
GetBBox( pObj, p1X, p1Y, p2X, p2Y );
if gBotAxis < p2x then
gBotAxis := p2x;
end;
function doMove( pObj:Handle ):boolean;
begin
GetBBox( pObj, p1X, p1Y, p2X, p2Y );
HMove(pObj,gBotAxis - p2x,0);
end;
{main}
begin
gCount := 0;
gBotAxis := -10000000000.0;
ForEachObjectInLayer(getBotAxis , 2, 0, 4 );
if gCount > 1 then
ForEachObjectInLayer(doMove , 2, 0, 4 );
end;
run ( ajustObjectR );
左揃え
Procedure ajustObjectL;
var
gBotAxis: real;
gCount:integer;
p1X, p1Y, p2X, p2Y:REAL;
function getBotAxis( pObj:Handle ):boolean;
begin
gCount := gCount +1;
GetBBox( pObj, p1X, p1Y, p2X, p2Y );
if gBotAxis > p1x then
gBotAxis := p1x;
end;
function doMove( pObj:Handle ):boolean;
begin
GetBBox( pObj, p1X, p1Y, p2X, p2Y );
HMove(pObj,gBotAxis - p1x,0);
end;
{main}
begin
gCount := 0;
gBotAxis := 10000000000.0;
ForEachObjectInLayer(getBotAxis , 2, 0, 4 );
if gCount > 1 then
ForEachObjectInLayer(doMove , 2, 0, 4 );
end;
run ( ajustObjectL );
左右中央
Procedure ajustObLcenter;
VAR
gRaxis:REAL;
gLaxis:REAL;
gCount:INTEGER;
p1x,p1y,p2x,p2y:REAL;
FUNCTION getRightAxis(pObj:Handle):BOOLEAN;
BEGIN
gCount := gCount + 1;
GetBBox(pObj,p1x,p1y,p2x,p2y);
IF gRaxis < p2x THEN
gRaxis := p2x;
IF gLaxis > p1x THEN
gLaxis := p1x;
END;
FUNCTION doMove(pObj:Handle):BOOLEAN;
BEGIN
GetBBox(pObj,p1x,p1y,p2x,p2y);
HMove(pObj,(gRaxis+gLaxis-(p2x+p1x))/2,0);
END;
{main}
BEGIN
gCount:=0;
gRaxis:=-10000000000.0;
gLaxis:=10000000000.0;
ForEachObjectInLayer(getRightAxis,2,0,4);
IF gCount>1 THEN
ForEachObjectInLayer(doMove,2,0,4);
END;
run (ajustObLcenter);