4.3. IDisplayCommandBuilder¶
An interface to provide functions to generate commands for the customer display control.
This interface is only for models which support a customer display.For the supporting models, refer to Supported Peripherals .
Constant
Name
Contents
International character constants
Code Page constants
Cursor Mode constants
ContrastMode constants
Property
Name
Contents
Generated commands.
Generated or added commands to which adds a pass-through command.
Method
Name
Contents
Adds data (text or command) to the command buffer.
Generates a backspace command, and then adds it to the command buffer.
Generates a horizontal tab command, and then adds it to the command buffer.
Generates a line feed command, and then adds it to the command buffer.
Generates a carriage-return command, and then adds it to the command buffer.
Generates a graphic display command, and then adds it to the command buffer.
Select command of the international character mode is generated and added to the command buffer.
Select command of the code page is generated and added to the command buffer.
Generates a command to clear the screen until the end of the line, and then adds it to the command buffer.
Generates a command to clear the screen, and then adds it to the command buffer.
Generates a command to move the cursor to the home position, and then adds it to the command buffer.
Generates a command to turn on/off the backlight, and then adds it to the command buffer.
Generates a command to move the cursor to the specified position, and then adds it to the command buffer.
Generates a command to change the cursor mode, and then adds it to the command buffer.
Generates a command to change the contrast mode, and then adds it to the command buffer.
Generates a command to register user-defined characters (SBCS), and then adds it to the command buffer.
Generates a command to register user-defined characters (DBCS), and then adds it to the command buffer.
4.3.1. DisplayInternationalType¶
International character constants
Declaration
public enum DisplayInternationalType { USA, France, Germany, UK, Denmark, Sweden, Italy, Spain, Japan, Norway, Denmark2, Spain2, LatinAmerica, Korea }
Constants
Name Contents USA USA France France Germany Germany UK UK Denmark Denmark Sweden Sweden Italy Italy Spain Spain Japan Japan Norway Norway Denmark2 Denmark || Spain2 Spain || LatinAmerica Latin America Korea Korea
4.3.2. DisplayCodePageType¶
Code Page constants
Declaration
public enum DisplayCodePageType { CP437, Katakana, CP850, CP860, CP863, CP865, CP1252, CP866, CP852, CP858, Japanese, SimplifiedChinese, TraditionalChinese, Hangul }
Constants
Name Contents CP437 CodePage437 (USA, Std. Europe) Katakana Katakana CP850 PC850 (Multilingual) CP860 PC860 (Portuguese) CP863 PC863 (Canadian-French) CP865 PC865 (Norwegian) CP1252 WPC1252 CP866 PC866 [Cyrillic #2] CP852 PC852 [Latin 2] CP858 Page 19 [PC858] Japanese Japanese font (shift JIS) SimplifiedChinese Simplified Chinese (GB2312) TraditionalChinese Traditional Chinese (Big5) Hangul Hangul (KSC5601)
4.3.3. DisplayCursorMode¶
Cursor Mode constants.
Declaration
public enum DisplayCursorMode { Off, Blink, On }
Constants
Name Contents Off Cursor off Blink Cursor blinking On Cursor lighting
4.3.4. DisplayContrastMode¶
Contrast mode constants.
Declaration
public enum DisplayContrastMode { Minus3, Minus2, Minus1, Default, Plus1, Plus2, Plus3 }
Constants
Name Contents Minus3 Contrast: -3 Minus2 Contrast: -2 Minus1 Contrast: -1 Default Default Plus1 Contrast: +1 Plus2 Contrast: +2 Plus3 Contrast: +3
4.3.5. Commands¶
Gets the command buffer (generated command).
Declaration
byte[] Commands { get; };
Parameter
None
Value
Contents Type Command buffer (generated command) byte[]
4.3.6. PassThroughCommands¶
Gets a command sequence with the pass-through command to the printer added at the beginning of the command buffer (generated command).
Declaration
byte[] PassThroughCommands { get; };
Parameter
None
Return value
Contents Type Command buffer (generated command) byte[]
Examples
public static byte[] CreateTextPattern() { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); builder.AppendCursorMode(DisplayCursorMode.Off); builder.AppendHomePosition(); byte[] textPattern = new byte[]{ 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47 }; builder.Append(textPattern); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs/DisplaySamplePage.xaml.cs/DisplayExtSamplePage.xaml.cs.
4.3.7. Append¶
Adds data (text or command) to the command buffer.
Declaration
void Append(byte data); void Append(byte[] data);
Parameter
Name Contents Type data Data (Text and Command) bytebyte[]Return value
None
Examples
public static byte[] CreateTextPattern() { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); builder.AppendCursorMode(DisplayCursorMode.Off); builder.AppendHomePosition(); byte[] textPattern = new byte[]{ 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47 }; builder.Append(textPattern); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.8. AppendBackSpace¶
Generates a backspace command, and then adds it to the command buffer.
Declaration
void AppendBackSpace();
Parameter
None
Return value
None
4.3.9. AppendHorizontalTab¶
added in version 1.6.0
Generates a horizontal tab command, and then adds it to the command buffer.
Declaration
void AppendHorizontalTab();
Parameter
None
Return value
None
4.3.10. AppendLineFeed¶
Generates a line feed command, and then adds it to the command buffer.
Declaration
void AppendLineFeed();
Parameter
None
Return value
None
4.3.11. AppendCarriageReturn¶
Generates a carriage-return command, and then adds it to the command buffer.
Declaration
void AppendCarriageReturn();
Parameter
None
Return value
None
4.3.12. AppendBitmap¶
Generates a graphic display command, and then adds it to the command buffer.
Declaration
void AppendBitmap(Bitmap bitmap, bool diffusion);
Parameter
Name Contents Type bitmap Image you want to displaySpecify the instance of the 160 × 40 dots monochrome Bitmap class.If a different sized Bitmap is specified, it is resized to 160 × 40 dots.The Bitmap pixels are automatically converted to monochrome value.System.Drawing.Bitmap diffusion Random dithertrue … Validfalse … Invalidbool Return value
None
Examples
public static byte[] CreateGraphicPattern() { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); builder.AppendCursorMode(DisplayCursorMode.Off); Bitmap bitmap; using (var stream = Properties.Resources.display_image_1) { bitmap = new Bitmap(stream); } builder.AppendBitmap(bitmap, false); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.13. AppendInternational¶
Select command of the international character mode is generated and added to the command buffer.
Declaration
void AppendInternational(DisplayInternationalType internationalType);
Parameter
Name Contents Type internationalType International character constants DisplayInternationalType Return value
None
Examples
public static byte[] CreateCharacterSet(DisplayCodePageType codePageType) { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); builder.AppendCursorMode(DisplayCursorMode.Off); builder.AppendHomePosition(); builder.AppendInternational(DisplayInternationalType.USA); builder.AppendCodePage(codePageType); byte[] pattern = { 0x2d, 0x20, 0x20, 0x20, 0x23, 0x24, 0x40, 0x5b, 0x5c, 0x5d, 0x5e, 0x60, 0x7b, 0x7c, 0x7d, 0x7e, 0x20, 0x20, 0x20, 0x2d, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3 }; builder.Append(textPattern); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.14. AppendCodePage¶
Select command of the code page is generated and added to the command buffer.
Declaration
void AppendCodePage(DisplayCodePageType codePageType);
Parameter
Name Contents Type codePageType Code Page constants DisplayCodePageType Return value
None
Examples
public static byte[] CreateCharacterSet(DisplayCodePageType codePageType) { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); builder.AppendCursorMode(DisplayCursorMode.Off); builder.AppendHomePosition(); builder.AppendInternational(DisplayInternationalType.USA); builder.AppendCodePage(codePageType); byte[] pattern = { 0x2d, 0x20, 0x20, 0x20, 0x23, 0x24, 0x40, 0x5b, 0x5c, 0x5d, 0x5e, 0x60, 0x7b, 0x7c, 0x7d, 0x7e, 0x20, 0x20, 0x20, 0x2d, 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3 }; builder.Append(textPattern); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.15. AppendDeleteToEndOfLine¶
Generates a command to clear the screen until the end of the line, and then adds it to the command buffer.
Declaration
void AppendDeleteToEndOfLine();
Parameter
None
Return value
None
4.3.16. AppendClearScreen¶
Generates a command to clear the screen, and then adds it to the command buffer.
Declaration
void AppendClearScreen();
Parameter
None
Return value
None
Examples
public static byte[] CreateClearScreen() { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.17. AppendHomePosition¶
Generates a command to move the cursor to the home position, and then adds it to the command buffer.
Declaration
void AppendHomePosition();
Parameter
None
Return value
None
Examples
public static byte[] CreateCursorMode(DisplayCursorMode mode) { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); builder.AppendCursorMode(DisplayCursorMode.Off); builder.AppendHomePosition(); byte[] textPattern = Encoding.UTF8.GetBytes("Star Micronics Total : 12345"); builder.Append(textPattern); builder.AppendSpecifiedPosition(20, 2); builder.AppendCursorMode(mode); builder.AppendHomePosition(); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.18. AppendTurnOn¶
Generates a command to turn on/off the backlight, and then adds it to the command buffer.
Declaration
void AppendTurnOn(bool turnOn);
Parameter
Name Contents Type turnOn Backlight ON/OFF bool Return value
None
Examples
public static byte[] CreateTurnOn() { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendTurnOn(true); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.19. AppendSpecifiedPosition¶
Generates a command to move the cursor to the specified position, and then adds it to the command buffer.
Declaration
void AppendSpecifiedPosition(int x, int y);
Parameter
Name Contents Type x Digit position (Leftmost digit is 1) int y Line position (top line is 1) int Return value
None
Examples
public static byte[] CreateCursorMode(DisplayCursorMode mode) { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); builder.AppendCursorMode(DisplayCursorMode.Off); builder.AppendHomePosition(); byte[] textPattern = Encoding.UTF8.GetBytes("Star Micronics Total : 12345"); builder.Append(textPattern); builder.AppendSpecifiedPosition(20, 2); builder.AppendCursorMode(mode); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.20. AppendCursorMode¶
Generates a command to change the cursor mode, and then adds it to the command buffer.
Declaration
void AppendCursorMode(DisplayCursorMode cursorMode);
Parameter
Name Contents Type cursorMode Cursor Mode constants DisplayCursorMode Return value
None
Examples
public static byte[] CreateCursorMode(DisplayCursorMode mode) { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); builder.AppendCursorMode(DisplayCursorMode.Off); builder.AppendHomePosition(); byte[] textPattern = Encoding.UTF8.GetBytes("Star Micronics Total : 12345"); builder.Append(textPattern); builder.AppendSpecifiedPosition(20, 2); builder.AppendCursorMode(DisplayCursorMode.On); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.21. AppendContrastMode¶
Generates a command to change the contrast mode, and then adds it to the command buffer.
Declaration
void AppendContrastMode(DisplayContrastMode contrastMode);
Parameter
Name Contents Type contrastMode ContrastMode constants DisplayContrastMode Return value
None
Examples
public static byte[] CreateContrastMode() { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendContrastMode(DisplayContrastMode.Default); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.22. AppendUserDefinedCharacter¶
Generates a command to register user-defined characters (SBCS), and then adds it to the command buffer.
Declaration
void AppendUserDefinedCharacter(int index, int code, byte[] font);
Parameter
Name Contents Type index Japanese fontFont number00h ≦ index ≦ 1Fhint code Character code of user-defined character20h ≦ code ≦ 7FhIf Japanese is specified with the AppendCodePage method, the following range is also supported.A0h ≦ code ≦ DFhint font 16-byte font dataRefer to the font data format of the user-defined characters.Specifying null deletes the user-defined characters of the specified font No.byte[] Return value
None
The font data format of the user-defined characters.
Examples
public static byte[] CreateUserDefinedCharacter(bool set) { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); builder.AppendCursorMode(DisplayCursorMode.Off); builder.AppendHomePosition(); builder.AppendInternational(DisplayInternationalType.USA); builder.AppendCodePage(DisplayCodePageType.Japanese); if (set) { byte[] font = { 0x00, 0x00, 0x32, 0x00, 0x49, 0x00, 0x49, 0x7f, 0x26, 0x48, 0x00, 0x48, 0x00, 0x30, 0x00, 0x00 }; byte[] dbcsFont = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x20, 0x04, 0x90, 0x04, 0x90, 0x02, 0x60, 0x00, 0x00, 0x07, 0xf0, 0x04, 0x80, 0x04, 0x80, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; builder.AppendUserDefinedCharacter(0, 0x20, font); builder.AppendUserDefinedDbcsCharacter(0, 0x8140, dbcsFont); } else { builder.AppendUserDefinedDbcsCharacter(0, 0x8140, null); } byte[] textPattern = {0x5b, 0x20, 0x20, 0x53, 0x74, 0x61, 0x72, 0x20, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x6e, 0x69, 0x63, 0x73, 0x20, 0x20, 0x5d, 0x5b, 0x81, 0x40, 0x81, 0x40, 0x83, 0x58, 0x83, 0x5e, 0x81, 0x5b, 0x90, 0xb8, 0x96, 0xa7, 0x81, 0x40, 0x81, 0x40, 0x5d }; builder.Append(textPattern); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.
4.3.23. AppendUserDefinedDbcsCharacter¶
Generates a command to register user-defined characters (DBCS), and then adds it to the command buffer.
Declaration
void AppendUserDefinedDbcsCharacter(int index, int code, byte[] font);
Parameter
Name Contents Type index Japanese fontFont number00h ≦ index ≦ 0Fhint code Character code of user-defined character20h ≦ code ≦ 7FhIf Japanese is specified with the AppendCodePage method, the following range is also supported.80 00h ≦ code ≦ FF FFhint font 32-byte font dataRefer to the font data format of the user-defined characters.Specifying null deletes the user-defined characters of the specified font No.byte[] Return value
None
The font data format of the user-defined characters.
Examples
public static byte[] CreateUserDefinedCharacter(bool set) { IDisplayCommandBuilder builder = StarIoExt.CreateDisplayCommandBuilder(DisplayModel.SCD222); builder.AppendClearScreen(); builder.AppendCursorMode(DisplayCursorMode.Off); builder.AppendHomePosition(); builder.AppendInternational(DisplayInternationalType.USA); builder.AppendCodePage(DisplayCodePageType.Japanese); if (set) { byte[] font = { 0x00, 0x00, 0x32, 0x00, 0x49, 0x00, 0x49, 0x7f, 0x26, 0x48, 0x00, 0x48, 0x00, 0x30, 0x00, 0x00 }; byte[] dbcsFont = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x20, 0x04, 0x90, 0x04, 0x90, 0x02, 0x60, 0x00, 0x00, 0x07, 0xf0, 0x04, 0x80, 0x04, 0x80, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; builder.AppendUserDefinedCharacter(0, 0x20, font); builder.AppendUserDefinedDbcsCharacter(0, 0x8140, dbcsFont); } else { builder.AppendUserDefinedDbcsCharacter(0, 0x8140, null); } byte[] textPattern = {0x5b, 0x20, 0x20, 0x53, 0x74, 0x61, 0x72, 0x20, 0x4d, 0x69, 0x63, 0x72, 0x6f, 0x6e, 0x69, 0x63, 0x73, 0x20, 0x20, 0x5d, 0x5b, 0x81, 0x40, 0x81, 0x40, 0x83, 0x58, 0x83, 0x5e, 0x81, 0x5b, 0x90, 0xb8, 0x96, 0xa7, 0x81, 0x40, 0x81, 0x40, 0x5d }; builder.Append(textPattern); return builder.PassThroughCommands; }
Refer to DisplayFunction.cs.