Each vector length and direction code is a string of three characters.
If the first character of a specification byte is a 0 (zero), the two characters that follow are interpreted as hexadecimal values.Ī simple shape specification byte contains vector length and direction encoded into one specification byte.Ī simple shape specification byte contains vector length and direction encoded into one specification byte (one specbyte field). This section uses both decimal and hexadecimal specification byte values for its examples (as do many of the shape definition files). A specification byte can be expressed in the shape definition file as either a decimal or hexadecimal value. Each specification byte is a code that defines either a vector length and direction or one of a number of special codes. Names with lowercase characters are ignored and are usually used to label font shape definitions.Ī shape specification byte. Shape names must be uppercase to be recognized. The number of data bytes (specbytes) required to describe the shape, including the terminating 0.
Text fonts (files containing shape definitions for each character) require specific numbers corresponding to the value of each character in the ASCII code other shapes can be assigned any numbers. For Unicode fonts these glyphs appear at the U+00B0, U+00B1, and U+2205 shape numbers and are part of the “Latin Extended-A” subset. Non-Unicode font files use the shape numbers 256, 257, and 258 for the symbolic identifiers Degree_Sign, Plus_Or_Minus_Sign, and Diameter_Symbol. The following list describes the fields of a shape description:Ī number, unique to the file, between 1 and 258 (and up to 32768 for Unicode fonts), and preceded by an asterisk (*). Because AutoCAD ignores blank lines and text to the right of a semicolon, you can embed comments in shape definition files.Įach shape description has a header line of the following form and is followed by one or more lines containing specification bytes, separated by commas and terminated by a 0. Keep in mind, however, that this is a very complex subject to learn and requires patience.Įach line in a shape definition file can contain up to 128 characters. If this initial entry describes a shape, the file is used as a shape file.īeing able to create your own shape definitions is a valuable skill. If a shape definition file is to be used as a font file, the first entry in the file describes the font itself rather than a shape within the file.
The syntax of the shape description for each shape or character is the same regardless of the final use (shape or font) for that shape description. You can create or modify shape definition files with a text editor or word processor that saves files in ASCII format. Probably not helping much here, but definitely curious about this issue, especially the part where it shows fine in single but different in multiple.AutoCAD font and shape files (SHX) are compiled from shape definition files (SHP). MTEXT objects can support multiple languages, so that might be the reason why it shows different than the single line (single line text objects cannot support multiple languages) as mentioned in the link below. There are quite a few posts on the Autodesk Knowledge Network regarding fonts being replaced with ? and most posts tend to relate the issue to a missing font file (SHX). I think you are correct or going down the correct path with the 'missing font' idea however not sure why it would show correctly on one and not on the other.
When editing the block attribute, the question marks did not appear on my screen/computer. So I downloaded your drawing and opened it on my machine, and the Thai characters appeared correctly (no question marks) on both the blocks, the one using single line, and also on the one using multi-line.