maskRectangle: CommandBuffer.maskRectangle => {
TransferRectangle[[maskRectangle.sMin, maskRectangle.fMin, maskRectangle.sSize, maskRectangle.fSize]];
};
maskRunGroup: CommandBuffer.maskRunGroup => {
s: CARDINAL ← maskRunGroup.sMin;
sMinBand: CARDINAL ← MIN[band.sOrigin+band.sMin, maskRunGroup.sMin+maskRunGroup.sSize];
sMaxBand: CARDINAL ← MIN[band.sOrigin+band.sMin+band.sSize, maskRunGroup.sMin+maskRunGroup.sSize];
run: LONG POINTER TO PDFileFormat.Run ← maskRunGroup.pointer;
TempColor[[maskRunGroup.sMin, maskRunGroup.fMin, maskRunGroup.sSize, maskRunGroup.fSize]];
WHILE s < sMinBand
DO
IF run.lastRun THEN s ← s + 1;
run ← run + SIZE[PDFileFormat.Run];
ENDLOOP;
WHILE s < sMaxBand
DO
PDInterpBitmap.Fill[band, [s, run.fMin+maskRunGroup.fOffset, 1, run.fSize], 1];
IF run.lastRun THEN s ← s + 1;
run ← run + SIZE[PDFileFormat.Run];
ENDLOOP;
TempColor[[maskRunGroup.sMin, maskRunGroup.fMin, maskRunGroup.sSize, maskRunGroup.fSize]];
};
maskSamples: CommandBuffer.maskSamples => {
rectangle: PDInterpBitmap.Rectangle ← PDInterpBitmap.Window[maskSamples.samples];
TempColor[rectangle];
PDInterpBitmap.Transfer[band, maskSamples.samples, [or, null]];
TempColor[rectangle];
};
colorSamples: CommandBuffer.colorSamples => {
PDInterpBitmap.Transfer[band, colorSamples.samples];
};