home *** CD-ROM | disk | FTP | other *** search
- TYPE
- LONGSTRING = STRING[255];
-
- {****************************************************************************}
- FUNCTION CENTER ( {* CENTERS A STRING IN FIELD *}
- FIELD_WIDTH : BYTE; {* WIDTH OF FIELD FOR CENTER *}
- CENTER_STRING : LONGSTRING {* STRING TO CENTER *}
- ) : LONGSTRING; {* RETURN THE STRING *}
- {************************************************ *
- * THIS FUNCTIONS TAKES THE STRING 'CENTER_STRING' AND CENTERS IT IN A *
- * FIELD 'FIELD_WIDTH' SPACES LONG. IT RETURNS A 'LONG_STRING' WITH A *
- * LENGTH EQUAL TO 'FIELD_WIDTH'. IF THE 'CENTER_STRING' IS LONGER THAN *
- * FIELD WIDTH, IT IS TRUNCATED ON THE RIGHT END AND IS NOT CENTERED. *
- ****************************************************************************}
-
- VAR
- TEMP : STRING[255];
- MIDDLE : BYTE;
-
- BEGIN
- MIDDLE := FIELD_WIDTH DIV 2;
- IF LENGTH(CENTER_STRING) > FIELD_WIDTH THEN
- CENTER := COPY(CENTER_STRING,1,FIELD_WIDTH) {TRUNCATE AND RETURN}
- ELSE
- BEGIN
- TEMP := REPLICATE(MIDDLE - (LENGTH(CENTER_STRING) DIV 2),' ') +
- CENTER_STRING +
- REPLICATE(MIDDLE - (LENGTH(CENTER_STRING) DIV 2) + 1,' ');
- CENTER := COPY(TEMP, 1, FIELD_WIDTH) {TRUNCATE TO FIELD_WIDTH CHARACTERS}
- END {ELSE}
- END; {CENTER}
-
- {****************************************************************************}