Display control method, device, projection device, and computer-readable storage medium
By obtaining the actual width of each character in the head-up display device and displaying it according to the preset interval, the problem of uneven character spacing is solved, and a more beautiful display and an improved user experience is achieved.
Patent Information
- Application Number
- CN202411942609.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-27
- Publication Date
- 2025-05-16
- Estimated Expiration
- 2044-12-27
AI Technical Summary
In the head-up display device, when the information in the form of characters is displayed, the spacing between characters is uneven, resulting in unsightly display and poor user experience.
Ensure uniformity of character intervals by getting the actual width of each character in the bitmap and displaying all characters according to the actual width and preset intervals.
It ensures that the interval between characters in the displayed line of characters is evenly matched without increasing the vehicle hardware cost, improving the driving experience and display aesthetics.
Smart Images

Figure CN119380677B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of assisted driving technology, and in particular to a display control method, device, projection device, and computer-readable storage medium. Background Art
[0002] The Head Up Display (HUD) device projects the light of the display image output by the image source onto an imaging window (e.g., an imaging board, a windshield, etc.) through, for example, a reflective optical design, so as to display vehicle status information such as vehicle speed and fuel level, as well as indication information such as navigation and hazard warnings, at an appropriate position in front of the driver. This allows the driver to obtain relevant information such as vehicle speed and fuel level without shifting his line of sight away from the road ahead, thereby improving the driving safety factor and driving experience.
[0003] However, when the information to be displayed is presented in the form of characters (such as Bluetooth calls, navigation text information, etc.), there will be a problem of uneven spacing between characters in a line of characters displayed, resulting in an unsightly display and a poor user experience. Summary of the invention
[0004] The present disclosure provides a display control method, device, projection device, and computer-readable storage medium, which can ensure uniform spacing between characters in a displayed line of characters without increasing the hardware cost of the vehicle.
[0005] The technical solution of the present disclosure is achieved as follows:
[0006] In a first aspect, the present disclosure provides a display control method, the method comprising: obtaining the actual width of each character to be displayed in a corresponding bitmap; and displaying all characters to be displayed according to the actual width of each character to be displayed and a preset interval.
[0007] In a second aspect, the present disclosure provides a display control device, which includes: an acquisition part and a display part; the acquisition part is configured to acquire the actual width of each character to be displayed in the corresponding bitmap; the display part is configured to display all characters to be displayed according to the actual width of each character to be displayed and a preset interval.
[0008] In a third aspect, the present disclosure provides a projection device, which includes: a display unit and a display control unit; the display control unit is configured to: obtain the actual width of each character to be displayed in the corresponding bitmap; the display unit projects all the characters to be displayed onto the projected component according to the actual width of each character to be displayed and a preset interval, so that a visual confirmer can visually confirm the characters to be displayed.
[0009] In a fourth aspect, an embodiment of the present disclosure provides a display control device, comprising: a processor and a memory; the processor is used to execute instructions stored in the memory to implement the display control method described in the first aspect.
[0010] In a fifth aspect, the present disclosure provides a computer-readable storage medium storing at least one instruction, wherein the at least one instruction is used to be executed by a processor to implement the display control method as described in the first aspect.
[0011] In a sixth aspect, the present disclosure provides a vehicle, comprising the head-up display device described in the fifth aspect.
[0012] The present disclosure provides a display control method, the method comprising: obtaining the actual width of each character to be displayed in a corresponding bitmap; and displaying all characters to be displayed according to the actual width of each character to be displayed and a preset interval. In the present disclosure, on the basis of the original bitmap, it is ensured that each character is displayed according to the actual occupied width of each character in the bitmap, which does not increase the hardware cost, and can make the intervals between the characters uniform and the display beautiful, thereby improving the driving experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] Figure 1 A schematic diagram of the composition of a vehicle-mounted system provided by the present invention.
[0014] Figure 2 An exemplary top view of a vehicle provided for the present disclosure.
[0015] Figure 3 An exemplary perspective view from the driver's seat of a vehicle is provided for the present disclosure.
[0016] Figure 4 A schematic diagram of the architecture of the head-up display device provided by the present disclosure.
[0017] Figure 5 It is a schematic diagram of a plurality of characters to be displayed in the related art.
[0018] Figure 6 A flow chart of a display control method provided by the present invention.
[0019] Figure 7 A schematic diagram of a bitmap of a character provided for the present disclosure.
[0020] Figure 8a A schematic diagram of drawing the first line of the first character to be displayed according to the actual width provided by the present disclosure.
[0021] Figure 8bA schematic diagram of drawing the second line of the first character to be displayed according to the actual width provided by the present disclosure.
[0022] Figure 8c A schematic diagram of drawing the third line of the first character to be displayed according to the actual width provided by the present disclosure.
[0023] Figure 8d A schematic diagram of drawing a plurality of characters to be displayed according to actual width provided by the present disclosure.
[0024] Fig. 9 A schematic diagram of a text rendering buffer provided for the present disclosure being divided into a text drawing buffer and a single character filtering buffer.
[0025] Fig.10a The schematic diagram of column 1 will be copied when filtering is provided for the present disclosure.
[0026] Fig.10b A schematic diagram of filtering a text drawing buffer by 15 columns provided for the present disclosure.
[0027] Fig.10c A schematic diagram of filtering a text drawing buffer by 33 columns provided for the present disclosure.
[0028] Fig.10d A schematic diagram of filtering a text drawing buffer by 49 columns provided for the present disclosure.
[0029] Fig.10e This is a schematic diagram of filtering after copying the first row, the last row and the last column provided by the present disclosure.
[0030] Fig.11 A schematic diagram for comparing characters to be displayed before and after filtering provided by the present disclosure.
[0031] Fig.12 A schematic diagram of the composition of a display control device provided by the present invention.
[0032] Fig.13 A schematic diagram of the structure of a display control device provided by the present invention.
[0033] Fig.14 A structural block diagram of a display control system provided by the present disclosure. DETAILED DESCRIPTION
[0034] The technical solutions in the present disclosure will be described clearly and completely below in conjunction with the accompanying drawings in the present disclosure.
[0035] See also Figure 1, which shows an example of a vehicle-mounted system 100 that can be applied to the technical solution of the present disclosure. In some examples, the vehicle equipped with the vehicle-mounted system 100 can be an internal combustion engine vehicle using an engine as a power source, a hybrid vehicle using an engine and an electric motor as a power source, an electric vehicle using an electric motor as a power source, and other types of vehicles. In the subsequent content of this specification, the vehicle equipped with the vehicle-mounted system 100 is referred to as the present vehicle.
[0036] like Figure 1 As shown, the vehicle-mounted system 100 includes: a navigation subsystem 110, an environment detection device group 120 for obtaining the vehicle's environment during driving, a driving state detection device group 130, a data processing unit 140, a display control unit 150, a display unit 160, a travel system 180, and a suspension system 190. The above components or device groups are coupled together through a communication bus 12. In some examples, the communication bus 12 is used for connection and communication between the above components or device groups. It should be noted that Figure 1 Only a portion of the in-vehicle system 100 is shown, not all of the components of the in-vehicle system 100 .
[0037] exist Figure 1 In the navigation subsystem 110, a positioning device 111 and a map information storage device 112 are included. The positioning device 111 can locate the position of the vehicle based on the global positioning system (GPS), China's Beidou system, Russia's GLONASS system, Europe's Galileo system, Japan's Quasi-Zenith Satellite System (QZSS), India's Indian Regional Navigation Satellite System (IRNSS) and other positioning systems to obtain the position information of the vehicle. The map information storage device 112 stores map information, and can obtain a navigation path leading to the destination according to the position information obtained from the positioning device 111, and display the position information and the navigation path in the map application.
[0038] exist Figure 1 In the embodiment, the environment detection device group 120 may include an on-board communication device 121, a radar 122, a laser range finder 123, a camera 124, and a light sensor 125. These devices can obtain the environment information representing the inside or outside of the vehicle.
[0039] The vehicle-mounted communication device 121 can communicate wirelessly with one or more devices directly or via a communication network. These devices that can communicate with the vehicle-mounted communication device 121 can be other vehicles, roadside machines or roadside stations, or mobile terminal devices used by people in the vehicle. In some examples, the vehicle-mounted communication device 121 can use 3G cellular communication, such as code division multiple access (CDMA), EVDO (Evolution-Data Only), global system for mobile communications (GSM) / general packet radio service (GPRS), or 4G cellular communication, such as long term evolution (LTE), or 5G cellular communication. In some examples, the vehicle-mounted communication device 121 can also communicate with a wireless local area network (WLAN) using WiFi. In some embodiments, the vehicle-mounted communication device 121 can also communicate directly with the device using an infrared link, Bluetooth or ZigBee. In some examples, the vehicle-mounted communication device 121 can also communicate with the device using other wireless protocols.
[0040] The radar 122 is used to sense objects in the surrounding environment of the vehicle, and can also be used to sense the speed and / or direction of these objects. In some examples, the radar 122 can use electromagnetic waves or lasers as a medium to detect objects based on a time of flight (TOF) method or a phase shift method, and detect the position of the detected object, the distance to the detected object, and the relative speed. In some examples, in order to be able to detect objects located in front of, behind, or to the side of the vehicle, the radar 122 can be configured at an appropriate position outside the vehicle.
[0041] The laser rangefinder 123 may utilize laser light to sense objects in the environment in which the host vehicle is located. In some embodiments, the laser rangefinder 123 may include one or more laser sources, a laser scanner, and one or more detectors, among other system components.
[0042] The camera 124 can be used to capture multiple images of the surrounding environment of the vehicle. The camera 124 can be a static camera or a video camera. In some examples, in order to obtain the external image of the vehicle, the camera 124 can be located at an appropriate position outside the vehicle. For example, in order to obtain the image in front of the vehicle, the camera 124 can be configured in the interior of the vehicle close to the front windshield. Alternatively, the camera 124 can be configured around the front bumper or radiator grille. In some examples, in order to obtain the image behind the vehicle, the camera 124 can be configured in the interior of the vehicle close to the rear window glass. Alternatively, the camera 124 can be configured around the rear bumper, trunk or tailgate. In some examples, in order to obtain the image of the side of the vehicle, the camera 124 can be configured in the interior of the vehicle close to at least one of the side windows. Alternatively, the camera 124 can be configured around the side mirror, fender or door. In some examples, in order to obtain the foreground image of the vehicle in the same field of view as the driver, the camera 124 can be around the steering wheel.
[0043] The light sensor 125 can be used to detect the ambient light illumination of the vehicle. Specifically, it can be a sensor that only has the function of detecting the ambient light illumination, or it can be a sensor that has both the function of detecting the ambient light illumination and other functions (such as a rain light sensor). In some examples, in order to detect the illumination of the ambient light in the vehicle and control the interior lighting, the light sensor 125 can be configured at a position close to the reading light on the roof console. In some examples, in order to detect the illumination of the ambient light in the vehicle and control the brightness of the interior lighting and the instrument panel backlight, the light sensor 125 can be behind or inside the instrument panel. In some examples, in order to detect the ambient light entering the interior of the vehicle, the light sensor 125 can be configured on the inside of the front windshield and close to the rearview mirror. In some examples, in order to detect the ambient light entering the interior of the vehicle and determine the degree of impact on the driver, the light sensor 125 can be configured inside or outside the steering wheel. In some examples, in order to detect the illumination of the ambient light outside the vehicle and automatically adjust the anti-glare function of the rearview mirror, the light sensor 125 can be configured on the back or near the rearview mirror. In order to detect the illumination of the ambient light outside the vehicle for automatic control of the headlights, the light sensor 125 may be configured near the front bumper or front grille. In order to detect the illumination of the ambient light outside the vehicle, avoid interference from direct light or reflected light, and provide more accurate light readings, the light sensor 125 may be configured on the side or corner of the vehicle. In some advanced driver assistance systems, the light sensor 125 may be integrated with a forward-looking camera or other sensors to provide ambient light information.
[0044] exist Figure 1In the embodiment, the vehicle driving state detection device group 130 may include: a steering angle sensor 131 for detecting the steering angle of the vehicle, a vehicle speed sensor 132 for detecting the driving speed of the vehicle, and an acceleration sensor 133 for detecting the acceleration applied to the vehicle. In some examples, as shown in the dashed box, an inertial sensor 134 for detecting the position and orientation change of the vehicle based on inertial acceleration may also be included. The inertial sensor 134 may be a combination of the acceleration sensor 133 and a gyroscope in a specific implementation process.
[0045] exist Figure 1 In the embodiment, the data processing unit 140 can be implemented as a computing system having a memory, a processor, an input / output interface, and a bus connected to these. In some examples, the data processing unit 140 enables the processor to execute multiple commands through program instructions stored in the memory to process the data obtained by the navigation subsystem 110, the environment detection device group 120, and the driving state detection device group 130. In some examples, the data processing unit 140 can also partially or completely control the driving of the vehicle based on the processed data.
[0046] exist Figure 1 As shown in the dotted box, the display control unit 150 and the display unit 160 can serve as the main body of the head-up display (HUD) device 170. The display control unit 150 can process the received data processed by the data processing unit 140, or after receiving the data obtained by the navigation subsystem 110, the environment detection device group 120, and the driving state detection device group 130, to obtain the display setting to be displayed, and project the display setting onto the windshield of the vehicle through the display unit 160 for display.
[0047] exist Figure 1 In the embodiment of the present invention, the travel system 180 may include an engine 181, an energy source 182, a transmission 183 and wheels 184. The engine 181 may be an internal combustion engine, an electric motor, an air compression engine or other types of engine combinations, such as a hybrid engine consisting of a gasoline engine and an electric motor, or a hybrid engine consisting of an internal combustion engine and an air compression engine. The engine 181 converts the energy source 182 into mechanical energy. Examples of the energy source 182 include gasoline, diesel, other petroleum-based fuels, propane, other compressed gas-based fuels, ethanol, solar panels, batteries and other sources of electricity. The energy source 182 may also provide energy for other devices of the vehicle-mounted system 100. The transmission 183 may transmit the mechanical power from the engine 181 to the wheels 184. The transmission 183 may include a gearbox, a differential and a drive shaft. In one embodiment, the transmission 183 may also include other devices, such as a clutch. Among them, the drive shaft may include one or more shafts that can be coupled to one or more wheels 184.
[0048] exist Figure 1 In the embodiment, the suspension system 190 is a mechanical system that connects the wheel 184 with the vehicle body, absorbs the impact caused by uneven road surface, and maintains the stability and comfort of the vehicle. The main components of the suspension system 190 may include: springs, which are used to support the weight of the vehicle, absorb and mitigate the impact caused by uneven road surface; shock absorbers, which control the vibration of the springs and quickly calm the rebound of the springs; upper arms and lower arms, which are connecting rods connecting the wheel 184 with the vehicle body, transmitting force and torque; steering knuckles, which are the fixed points of the wheel 184, connecting the wheel 184 and the suspension system 190, allowing the wheel 184 to rotate; stabilizer bars, which are used to reduce the roll of the vehicle when turning; axles, which connect the left and right wheels, transmit power and support the wheels; ball joints, which allow the connecting rods of the suspension system 190 to move in multiple directions; suspension bushings, which reduce friction and vibration between the components of the suspension system 190; suspension brackets, which connect the components of the suspension system 190 and the vehicle body, and absorb and isolate vibration.
[0049] Combination Figure 2 An exemplary top view of the vehicle is shown and Figure 3 The exemplary perspective view from the driver's seat of the present vehicle is shown, and the present vehicle includes a windshield 204 located at the front of the vehicle. The driver and passengers in the passenger cabin 208 of the present vehicle can see the front of the present vehicle through the windshield 204.
[0050] exist Figure 3 In the embodiment of the present invention, the windshield 204 is visually located above the vehicle dashboard 206. The driver can turn the steering wheel 210 in the passenger cabin 208 to steer the vehicle, such as changing lanes, merging and parking the vehicle. In some embodiments, the steering wheel 210 can be retracted or omitted.
[0051] Head-up display device 170 (see Figure 4 ) projects the display image 212 (eg, a virtual image) onto a portion of the windshield 204 through one or more apertures (eg, aperture 216) in the instrument panel 206. Figure 3 An example size of the display image 212 is shown, but the display image 212 may be presented over a larger or smaller area. Examples of the display image 212 include various vehicle information, such as the current vehicle speed, the current gear of the vehicle transmission, the engine speed, the direction of the vehicle, the current infotainment system settings, and / or other vehicle information. The head-up display device 170 provides information to the vehicle driver without the driver having to look away from objects in front of the vehicle.
[0052] See also Figure 4In the exemplary implementation architecture of the head-up display device 170 shown in the figure, the display control unit 150 generates a signal 412 based on the data processed by the data processing unit 140, or the data 420 transmitted by the navigation subsystem 110, the environment detection device group 120, and the driving state detection device group 130. The display unit 160 may include: a light source 161 and an optical path component 162. The light source 161 outputs light (such as a virtual image) based on the signal 412 from the display control unit 150 to display on the windshield 204. For example, the light source 161 may include one or more lasers and output red light, green light, and blue light.
[0053] The optical path component 162 can reflect the output of the light source 161 onto the windshield 204 through the hole 216. The viewer (e.g., the driver) can view the display image 212 in the display area where the display image 212 is projected onto the windshield 204. In some examples, the optical path component 162 may include one or more reflectors (plane mirrors) and concave mirrors (magnifying glasses). The output of the light source 161 is reflected back through the reflector and magnified by the concave mirror and then reflected to the windshield 204 to form a virtual image 40 that can be visually observed by the driver. The visual effect presented by the virtual image 40 is that the virtual image 40 is projected onto the projection surface 41 at a set distance in front of the vehicle, but the real environment remains visible through the projection surface 41. In some examples, the optical path component 162 can also be omitted, and the light source 161 can directly project the display image 212 onto the windshield 204 to form the virtual image 40 on the projection surface 41.
[0054] Combined with the above Figures 1 to 4 As shown, during the driving process, the vehicle often needs to project information in text form onto the windshield 204 through the display unit 160. For example, if a Bluetooth phone enters the vehicle during driving, the phone information needs to be displayed on the windshield 204, or the driving road condition information provided by the navigation subsystem 110 needs to be displayed in text form on the windshield 204, etc.
[0055] In the related art, there are usually three ways to display text in HUD:
[0056] One is a dot matrix font, also known as a bitmap font, which is created by defining the pixels of each character on a fixed grid, that is, each character is a bitmap composed of a fixed number of pixels. Although the file size of a dot matrix font is only about 1MB, it has certain advantages in storage, but the width of each character is fixed, which leads to uneven character spacing in the final displayed line of characters. Figure 5As shown, a line of characters including Chinese characters and numbers is displayed. When displaying "Speed Limit 60", the spacing between characters is set to 0. Since the pixel width occupied by each character is fixed at 16, but the actual pixels occupied by each character are different, the spacing between characters is different, affecting the viewing experience.
[0057] Another type of vector font, also known as outline font, uses mathematical formulas (such as Bezier curves) to describe the shape of the font. These formulas can be infinitely enlarged without distortion, so vector fonts remain clear at any size. Vector fonts can maintain uniform character spacing, but they have high requirements for processor performance and large random access memory (RAM) overhead. If Chinese is displayed, a single Chinese font (True Type font) file is large, about 10 MB, so the hardware cost of the entire system is also high. Therefore, using this method in a vehicle requires improving the processing power of the processor and also requires the vehicle to have strong storage capacity, resulting in an increase in the hardware cost of the entire system.
[0058] Another method is to generate a picture from the known text to be used, save the picture and use it directly, but this method takes up a lot of storage and has poor scalability.
[0059] Based on the above description, the present disclosure is expected to provide a display control method that does not require high vehicle hardware costs and can make the spacing between characters in a row of characters uniform, such as Figure 6 As shown, an example of a display control method provided by the present disclosure is shown, which can be executed by the aforementioned head-up display device 170, and in particular, can be executed by the display control unit 150 in the aforementioned head-up display device 170. Figure 6 The method shown includes step S601 and step S602.
[0060] In step S601, the actual width of each character to be displayed in the corresponding bitmap is obtained.
[0061] Each character to be displayed is a character in a line of characters to be displayed, and a character refers to a single symbol, such as a letter, number, punctuation mark, or special symbol. A bitmap is composed of a series of pixels, each pixel having a specific position and color value.
[0062] For example, Figure 7 As shown, it is a bitmap of the character "B". The storage width of the character "B" shown in the figure in the font library is 16 bits, that is, two bytes, a total of 16 rows, and each small square corresponds to a pixel. Therefore, 32 bytes are required to store the character.
[0063] Since the vehicle usually stores the encoding information of characters (GBK, ASCII, Unicode, UFT-8, etc.), the bitmap of each character to be displayed can be obtained by: determining the number of each character in the corresponding font according to the encoding of each character and the starting code of the corresponding font, and storing the bitmaps of multiple characters in the font; determining the starting address of each character in the corresponding font according to the number and the preset number of bytes occupied by a single character; and determining the data of the preset number of bytes starting from the starting address from the font corresponding to each character as the bitmap of each character. Among them, the font pre-stores the bitmaps of multiple characters arranged in a certain order.
[0064] The original text encoding may be various, such as English using ASCII encoding, Chinese using GBK or GB2312, or both using UTF-8 or Unicode encoding, but storing the corresponding font library for each encoding will increase storage pressure. Therefore, it is necessary to unify the encodings of different formats into a preset encoding format, so that only the font library corresponding to the preset encoding format needs to be stored in the vehicle. However, if there are characters whose encoding format is not the preset encoding format among the characters to be displayed, it is necessary to convert the encoding of the character into the encoding of the preset encoding format according to the encoding lookup table. Among them, the encoding lookup table includes the conversion relationship between different encoding formats and the preset encoding format.
[0065] Usually, the HUD software stores the font library corresponding to Unicode encoding, so in the vehicle, characters are usually converted from other encoding formats to Unicode encoding. The Unicode encoding here is only exemplary, and depending on different scenarios, it may be necessary to unify the characters into other encoding formats, which is not limited here.
[0066] Since the characters to be displayed are uncertain, they may be Chinese, letters, Arabic numerals, or characters from other countries other than Chinese. Therefore, a large number of fonts need to be pre-stored in the vehicle, such as Chinese fonts, digital fonts, letter fonts, etc. However, in actual applications, many fonts may not be used. For example, vehicles sold in China may only need Chinese fonts, letter fonts, and digital fonts, while Thai fonts, Russian fonts, etc. may not be used. Therefore, in order to reduce the storage pressure of the vehicle, at least one font and the bitmap of the characters included in each font can be determined according to the application scenario of the vehicle. Each font has a corresponding start code and end code. For each character to be displayed, if the code of a certain character falls between the start code and the end code of a certain font, the font is determined to be the font corresponding to the character, and the bitmap of the character is searched in the font.
[0067] The width of the bitmap of each character in the font stored in the vehicle is fixed and is a multiple of 8, that is, the width of the character setting will eventually be aligned to a multiple of 8, because the smallest storage unit is a byte, each byte is 8 bits, combined with Figure 7 , there are 8 rows in each column, so the width of the bitmap is a multiple of 8. If the character width is set to 6 pixels, the width of the generated bitmap is 8 pixels, and if it is set to 14 pixels, the width of the generated bitmap is 16 pixels. For Chinese characters, the actual width of each character is basically the same, but if the font size is set to 9 pixels, there will be a gap of 7 pixels between each character. In this way, the spacing between two characters will be at least 7 pixels and cannot be adjusted if it is directly rendered. If a mixture of Chinese and numbers or English is displayed, it will be even more unsightly. If the font size is set to 9 pixels, the actual width of the number "1" may be only 2 pixels. If it is displayed together with other text, the left and right spacing of the number "1" will be more than 10 pixels, which is extremely unsightly.
[0068] The font library corresponding to each character is determined. According to the difference between the encoding of each character and the starting encoding of the corresponding font library, the number of each character in the corresponding font library is determined. The number of bytes occupied by each character in the font library is the same. The starting address determined based on this is start_addr = n×(w / 8)×h, where n is the number, w is the character width, h is the character height, and (w / 8)×h is the number of bytes occupied by each character in the font library. For example, if the encoding of a character to be displayed is 0x4E03, it is determined that the font library falls into the encoding range of 0x4E00-0x9FFF, and the number of the character to be displayed is 0x4E03-0x4E00=3. The width of the bitmap of each character is the same, so Figure 7 For example, if the bitmap width of the character shown is 16, the starting address of the character to be displayed in the font library is: 3×(16 / 8)×16=96.
[0069] The actual width of the bitmap of each character can be determined by traversing each bit in the bitmap corresponding to the character and determining the width between the two non-zero bits that are farthest apart in the width direction as the actual width of the character. Figure 7 , every 8 bits in the bitmap form a column, and the figure shows two columns and 16 rows. The dark small squares in the figure represent non-zero bits. The non-zero bits are traversed and counted according to (row number, column number.bit). If bit2 in the 4th row and the 1st column is not 0, it is recorded as (4, 1.bit2). The width between two non-zero bits is determined, such as the width between (4, 1.bit2) and (5, 2.bit5) is 6. However, this method, for each character, first needs to traverse each bit in the bitmap, which is time-consuming. Moreover, determining the width between two bits also consumes a lot of computing power.
[0070] Therefore, the left edge position and the right edge position of each character can be determined according to the bitmap of each character to be displayed, and the width between the left edge position and the right edge position of each character can be determined as the actual width of each character in the corresponding bitmap.
[0071] Optionally, the method for determining the left edge position and the right edge position can be: perform a row traversal on the first non-zero column in the bitmap of each character, and determine the highest non-zero bit in the non-zero row as the left candidate edge position of each character, that is, for any character to be displayed, first find the first non-zero column in the corresponding bitmap, then determine all non-zero rows in the first non-zero column (recorded as the first column), and finally determine the highest non-zero bit in each non-zero row as the left candidate edge position of the character to be displayed. The highest bit in the left candidate edge position of each character is determined as the left edge position of each character, that is, for any character to be displayed, from at least one left candidate edge position, the bit with the highest bit is determined as the left edge position, such as: the candidate left edge bits are: bit0, bit3, bit5, then the left edge position is bit5. The last non-zero column (recorded as the tail column) in the bitmap of each character is traversed in rows, and the lowest non-zero bit in the non-zero row is determined as the right candidate edge bit of each character, that is, for any character to be displayed, the last non-zero column is first found in the corresponding bitmap, and then all non-zero rows in the last non-zero column are determined, and finally the lowest non-zero bit in each non-zero row is determined as the right candidate edge bit of the character to be displayed. The lowest bit in the right candidate edge bit of each character is determined as the right edge position of each character, that is, for any character to be displayed, from at least one right candidate edge bit, the lowest bit is determined as the right edge position, such as: the candidate right edge bits are: bit0, bit3, bit5, then the right edge position is bit0. In this way, for each character, its left edge position and right edge position in the corresponding bitmap can be determined.
[0072] To determine the first column and the last column, you can start traversing from the first column of each character bitmap, determine the first non-zero column you traverse as the first column, continue traversing, and determine the last non-zero column as the last column. To traverse and determine the last column more quickly, you can also start traversing from the last column, and determine the first non-zero column from the last column as the last column. Figure 7 , the first column is column 1 and the last column is column 2.
[0073] In a byte, the bits are arranged from left to right, with the bits increasing in order. Figure 7, bit0 to bit7 increase in order. Traverse each row in the first column and determine the highest bit in each non-zero row as the left candidate edge bit, that is, for each row, if there is a non-zero bit, a highest bit can be determined. Figure 7 , the non-zero rows in the first column (i.e., column 1) include: rows 4 to 13, the highest bit in rows 4 to 13 is bit2, and bit2 of each row is a candidate edge bit.
[0074] The highest bit in the left candidate edge position is determined as the left edge position of a character to be displayed. In one case, there is only one highest bit, and the highest bit is determined as the left edge position of a character to be displayed; in another case, there are multiple highest bits, and any of the highest bits is determined as the left edge position of a character to be displayed. Figure 7 , the candidate edge bits are all bit2, then bit2 of any row from row 4 to row 13 is determined as the left edge position.
[0075] The determination of the right edge position is similar to that of the left edge, so it will not be repeated here. Figure 7 Provide explanation. Figure 7 , the lowest bit (right candidate edge bit) of each non-zero row of the determined tail column (i.e., the second column) includes: bit6 of the 4th row, bit5 of the 5th row, bit5 of the 6th row, bit5 of the 7th row, bit6 of the 8th row, bit5 of the 9th row, bit5 of the 10th row, bit5 of the 11th row, bit5 of the 12th row, and bit6 of the 13th row; according to the right candidate edge bit, the lowest bit is determined to be bit5, that is, any one of bit5 of the 5th row, bit5 of the 6th row, bit5 of the 7th row, bit5 of the 9th row, bit5 of the 10th row, bit5 of the 11th row, and bit5 of the 12th row is determined as the right edge position.
[0076] Compared with the above pairwise comparison to determine the edge position, the number of comparisons for finding the edge position is greatly reduced, which can improve the efficiency of retrieving the edge position.
[0077] Optionally, in order to further improve the query efficiency of determining the edge position, the left edge position can also be determined by: traversing the first non-zero column in the bitmap of each character to determine the row where the row maximum value is located; and determining the highest bit of the row where the row maximum value is located in the bitmap of each character as the left edge position of each character. In the bitmap, 1 is used to indicate display, and 0 is used to indicate non-display. Among all the rows in the first non-zero column, the binary number corresponding to the 8 bits of the row where the row maximum value is located is the largest.
[0078] refer to Figure 7, with non-zero values as 1, the values of the 4th, 8th and 13th rows in the first column are: 111, and the values of the 5th to 7th rows, 9th to 12th rows are all: 100. Therefore, the rows where the maximum value is determined are the 4th, 8th and 13th rows, and the highest bit of any row is bit2. Any bit2 in the 4th, 8th and 13th rows is determined as the left edge position. In this way, determining the row where the maximum value is located is a comparison between rows. Compared with the comparison of bits, the number of comparisons is reduced, thereby improving the retrieval efficiency.
[0079] In step S602, all characters to be displayed are displayed according to the actual width of each character to be displayed and the preset interval.
[0080] Determine the starting address of the bitmap of each character to be displayed in the font library, the actual width w_valid in the bitmap, and the left edge position of the actual width (i.e., the starting byte in the bitmap and the starting position in the starting byte). If the bitmap height of each character is h, traverse from the 1st row to the hth row, and search the memory area of w_valid from the starting position of the starting byte when traversing row by row to draw the text to the text rendering buffer. The width of the text rendering buffer is recorded as buffer_w. For the pixel in the kth (1≤k≤w_valid)th column and mth row within the actual width of the bitmap corresponding to the nth (n≥1)th character, the corresponding memory address offset addr_offset in the text rendering buffer is: [(the sum of the actual widths of the bitmaps of the first n-1 characters) + (n–1) × character interval] × bpp + (k–1) × bpp + m×buffer_w×bpp, the memory address offset is used to indicate the address of any pixel within the actual width of the bitmap drawn in the text rendering buffer, the data drawn to the text rendering buffer is used to be finally stored in the video memory for display, and the width of the text buffer is the maximum width that can be displayed in a preset line; wherein, bpp is the number of bytes corresponding to the color format of the text rendering buffer, such as the number of bytes corresponding to the ARGB8888 format is 4, the number of bytes corresponding to the ARGB1555 format is 2, the number of bytes corresponding to the RGB888 format is 3, etc., when the data bit of the kth column and the mth row is 1, the addr_offset offset address memory in the text rendering buffer is filled with the preset color value, otherwise it is filled with 0; for example, the pre-defined color is white in RGB888 format, that is, the R, G, and B components are all 255, then the addr_offset address is filled with 255, the addr_offset+1 address is filled with 255, and the addr_offset+2 address is filled with 255.
[0081] For example, if the width of the text rendering buffer is 64 and the height is 16, the character to be displayed is "Speed limit 60", which is split into 4 characters to be displayed, namely "limit", "speed", "6", and "0", and the interval between the characters is set to 2 pixels. According to the actual width of each character, the characters are drawn to the text rendering buffer. Figure 8a As shown, draw the first line of "limit", such as Figure 8b As shown, draw the second line of "limit", such as Figure 8c As shown in the figure, the third line of "limit" is drawn, and so on. After drawing "limit", "speed" is drawn, until "0" is drawn. The final display effect of the text rendering buffer is as follows Figure 8d As shown. Figure 5 In comparison, the display effect of the present disclosure is as follows Figure 8d Since the display is based on the actual width of each character, the spacing between the characters finally displayed is uniform, the display is beautiful, and the driving experience is improved.
[0082] Because whether the pixel in the bitmap of each character in the font library is displayed can only be represented by 0 or 1, if the text is black, then the color value of the text edge is high-frequency information directly from minimum to maximum. This high-frequency information will make the jagged shape at the boundary of the character more visually prominent, resulting in poor image quality. Therefore, in some embodiments of the present disclosure, the display control method also includes the following step S603, and the above-mentioned step S602 can be specifically implemented by the following step S602a.
[0083] In step S603, each character is filtered to obtain all filtered characters to be displayed.
[0084] Specifically, the present disclosure does not limit the filtering method for filtering each character, such as: convolution filtering, mean filtering, median filtering, neighborhood filtering, etc.
[0085] Since the computing power of the vehicle is limited, in order to achieve the purpose of smoothing each character to be displayed without occupying too many computing resources, the neighborhood filtering algorithm can be selected in the present disclosure because of its simplicity and ease of implementation.
[0086] Specifically, the color values of the pixels adjacent to each black pixel in the bitmap of each character are determined; according to the color values of the pixels adjacent to each black pixel, the color values of the corresponding black pixels are trimmed to obtain all the filtered characters to be displayed.
[0087] In the vehicle display, black pixels projected onto the windshield are transparent, such as Figures 8a to 8dThe blank squares shown in the figure are all black pixels. Each pixel has three components: R, G, and B. Therefore, each color component needs to be filtered separately. Taking the R component as an example, the R component corresponding to the black pixel after filtering becomes R_flr = (R_up + R_down +R_left + R_right) / 4, where R_up, R_down, R_left, and R_right respectively represent the R components of the upper, lower, left, and right pixels adjacent to the black pixel. The determination of the filtered values of other color components is similar to that of the R component, which will not be repeated here.
[0088] During the filtering process, all characters to be displayed need to be copied to a special filter buffer, filtered in the filter buffer and then copied to the text rendering buffer for display. However, this method requires opening a filter buffer each time filtering is performed. The size of the buffer is greater than or equal to the memory size of all characters to be displayed, which consumes a lot of memory.
[0089] Therefore, the present disclosure provides a single-character filter buffer corresponding to the font size in the text rendering buffer for filtering (the size of the buffer is the same as the size of the memory occupied by each character). Fig. 9 As shown, the text rendering buffer is divided into a text drawing buffer and a single character filter buffer. After the text rendering buffer is set with a single character filter buffer corresponding to the font size, the calculation of the corresponding memory address offset addr_offset in the text rendering buffer becomes: [(the sum of the actual widths of the bitmaps of the first n-1 characters) + (n–1) × character interval] × bpp + (k–1) × bpp + m × buffer_w × bpp + buffer_offset × bpp, where buffer_offset is the offset address of the text drawing buffer in the text rendering buffer, and the size of buffer_offset is the same as the size of the set font.
[0090] Specifically, the filtering process after setting the single character filter buffer is as follows: copy the content of the first column of the text drawing area to the first column of the text rendering buffer; filter the characters to be displayed from the second column to the second to last column in the total actual width (recorded as text_draw_w) of at least one character to be displayed in the text drawing area using column mode, and save the filtered pixels starting from the second row and second column of the text rendering buffer, and the height of the saved column is the total height minus 2; then copy the first row and the last row in the text drawing buffer to the first row and the last row of the text rendering buffer, and the starting offset address of the text rendering buffer is 0 when copying, and the copy width is text_draw_w; finally, copy the content of the last column of the text drawing buffer to the text_draw_w column of the text rendering buffer, so that the filtering is completed and the smoothness of the text display is ensured. It should be noted that since the neighborhood filtering is adopted, since the adjacent pixels of the pixels of the first column, the last column, and the first row and the last row do not exist, in order to avoid errors caused by the failure to find adjacent pixels during the filtering process, the rows and columns at the boundary are directly copied without filtering.
[0091] For example, Fig.10a As shown, the single character filter buffer is the area with a height of 16 between the 1st column and the 16th column, the text drawing buffer is the area with a height of 16 between the 17th column and the 69th column, and the text rendering buffer is the area with a height of 16 between the 1st column and the 69th column; first copy the 17th column of the text drawing buffer to the single character filter buffer, and then Fig.10a As shown. Continue filtering in the column filtering manner, starting from the 18th column, and the copy height is from the 2nd row to the 15th row. Fig.10b A schematic diagram showing filtering the text drawing buffer by 15 columns is shown; Fig.10c A schematic diagram showing filtering the text drawing buffer by 33 columns is shown; Fig.10d A schematic diagram showing filtering the text drawing buffer by 49 columns is shown; Fig.10e A schematic diagram showing the completion of filtering after the first row, the last row, and the last column are copied.
[0092] In step S602a, all characters to be displayed after filtering are displayed according to the actual width of each character to be displayed and the preset interval.
[0093] All the characters to be displayed after the final filtering are copied to the video memory to be displayed on the windshield. After filtering, the high-frequency information is converted into low-frequency information, that is, there is a grayscale transition effect, which will feel smooth visually. Fig.11 As shown, it is a comparison of the display of multiple characters to be displayed "display speed limit 60km / h" before filtering and after filtering. The upper part is the display before filtering, and the lower part is the display after filtering.
[0094] Based on the same inventive concept as the above technical solution, see Fig.12 , which shows a display control device 1200 provided by the present disclosure, the display control device 1200 may be Figure 1 , Figure 4 The display control unit shown in the figure, the display control device 1200 includes: an acquisition part 1201 and a display part 1202; the acquisition part 1201 is configured to obtain the actual width of each character to be displayed in the corresponding bitmap; the display part 1202 is configured to display all the characters to be displayed according to the actual width of each character to be displayed and the preset interval.
[0095] In some embodiments of the present disclosure, the acquisition part 1201 is specifically configured to determine the left edge position and the right edge position of each character in the corresponding bitmap according to the bitmap of each character to be displayed; and determine the width between the left edge position and the right edge position of each character as the actual width of each character.
[0096] In some embodiments of the present disclosure, the display control device 1200 also includes: a filtering processing part, which is configured to filter each character to obtain all filtered characters to be displayed; a display part 1202, which is specifically configured to display all filtered characters to be displayed according to the actual width of each character to be displayed and a preset interval.
[0097] In some embodiments of the present disclosure, the display control device 1200 also includes: a determination part, which is configured to determine the number of each character in the corresponding font library according to the encoding of each character and the starting code of the corresponding font library before obtaining the actual width of the character in the corresponding bitmap of each character to be displayed, and the font library stores bitmaps of multiple characters; determine the starting address of each character in the corresponding font library according to the number and the preset number of bytes occupied by a single character; and determine a preset number of bytes of data starting from the starting address from the font library corresponding to each character as the bitmap of each character.
[0098] In some embodiments of the present disclosure, the determination part is further configured to determine at least one font and a bitmap of the characters included in each font according to the application scenario of the vehicle before determining the number of each character in the corresponding font based on the encoding of each character and the starting code of the corresponding font; and determine the font corresponding to each character based on the encoding of each character.
[0099] In some embodiments of the present disclosure, the display control device 1200 also includes: a conversion part, which is configured to convert the encoding of the non-standard characters into a preset encoding format according to a coding lookup table when there are non-standard characters that are not in a preset encoding format in each character, and the coding lookup table includes a conversion relationship between different encoding formats and the preset encoding format.
[0100] In some embodiments of the present disclosure, the determination part is specifically configured to perform a row traversal on the first non-zero column in the bitmap of each character, and determine the highest non-zero bit in the non-zero row as the left candidate edge bit of each character; determine the highest bit among the left candidate edge bits of each character as the left edge position of each character; perform a row traversal on the last non-zero column in the bitmap of each character, and determine the lowest non-zero bit in the non-zero row as the right candidate edge bit of each character; and determine the lowest bit among the right candidate edge bits of each character as the right edge position of each character.
[0101] In some embodiments of the present disclosure, the determination part is specifically configured to perform a row traversal on the first non-zero column in the bitmap of each character to determine the row where the row maximum value is located; and determine the highest bit of the row where the row maximum value is located in the bitmap of each character as the left edge position of each character.
[0102] In some embodiments of the present disclosure, the filtering processing part is specifically configured to determine the color values of the pixels adjacent to each black pixel in the bitmap of each character; according to the color values of the pixels adjacent to each black pixel, the color values of the corresponding black pixels are trimmed to obtain all the characters to be displayed after filtering.
[0103] refer to Fig.13 , which shows a schematic diagram of the structure of a display control device provided by an exemplary embodiment of the present disclosure. In some examples, the display control device has a communication function and can access a wired network or a wireless network. In some examples, the display control device can receive data based on the wired network or the wireless network accessed. It can be understood that the display control device undertakes the calculation and processing work of the technical solution of the present disclosure, and the present disclosure does not limit this.
[0104] like Fig.13 As shown, the display control device in the present disclosure may include one or more of the following components: a processor 1310 and a memory 1320 .
[0105] Optionally, the processor 1310 uses various interfaces and lines to connect various parts within the entire computing device, and executes various functions of the computing device and processes data by running or executing instructions, programs, code sets or instruction sets stored in the memory 1320, and calling data stored in the memory 1320. Optionally, the processor 1310 can be implemented in at least one hardware form of digital signal processing (DSP), field programmable gate array (FPGA), and programmable logic array (PLA). The processor 1310 can integrate one or a combination of a central processing unit (CPU), a graphics processing unit (GPU), a neural network processor (NPU), and a baseband chip. Among them, the CPU mainly processes the operating system, user interface, and application programs; the GPU is responsible for rendering and drawing the content that needs to be displayed on the touch display; the NPU is used to implement artificial intelligence (AI) functions; and the baseband chip is used to process wireless communications. It is understandable that the above baseband chip may not be integrated into the processor 1310, but may be implemented by a separate chip.
[0106] The memory 1320 may include a random access memory (RAM) or a read-only memory (ROM). Optionally, the memory 1320 includes a non-transitory computer-readable storage medium. The memory 1320 may be used to store instructions, programs, codes, code sets, or instruction sets. The memory 1320 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for at least one function (such as a touch function, a sound playback function, an image playback function, etc.), instructions for implementing the above various method embodiments, etc.; the data storage area may store data created according to the use of the computing device, etc.
[0107] In addition, those skilled in the art can understand that the structure of the computing device shown in the above drawings does not constitute a limitation on the computing device, and the computing device may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently. For example, the computing device also includes a display screen, a camera assembly, a microphone, a speaker, a radio frequency circuit, an input unit, a sensor (such as an acceleration sensor, an angular velocity sensor, a light sensor, etc.), an audio circuit, a WiFi module, a power supply, a Bluetooth module and other components, which will not be described in detail here.
[0108] The present disclosure also provides a computer-readable storage medium storing at least one instruction, wherein the at least one instruction is used to be executed by a processor to implement the display control method described in the above embodiments.
[0109] The present disclosure also provides a computer program product, which includes computer instructions stored in a computer-readable storage medium; a processor of a computing device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computing device executes to implement the display control method described in the above-mentioned embodiments.
[0110] Those skilled in the art should be aware that in one or more of the above examples, the functions described in the present disclosure can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or codes on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein communication media include any media that facilitates the transmission of computer programs from one place to another. Storage media can be any available media that can be accessed by a general or special-purpose computer.
[0111] The present disclosure also provides a projection device, including: a display control unit, configured to: obtain the actual width of each character to be displayed in the corresponding bitmap; a display unit projects all the characters to be displayed onto the projected component according to the actual width of each character to be displayed and a preset interval, so that a visual confirmer can visually confirm the characters to be displayed.
[0112] like Fig.14 As shown, the present disclosure also provides a display control system 1400, including: a CAN bus transceiver 1401, a processor unit 1402, and a display unit 1403; the processor unit 1402 includes: a CAN bus data transceiver module 1410, a text information processing module 1411, a font processing module 1412, a text rendering module 1413, a display driver module 1414 and a memory 1415.
[0113] Among them, the CAN bus transceiver 1401 is used to convert the differential signal of the CAN bus into a TTL level, thereby matching the input level of the CAN bus data transceiver module 1410 in the processor unit 1402, so that the CAN bus data transceiver module 1410 in the processor unit 1402 can correctly receive data from the CAN bus and send data to the CAN bus.
[0114] The processor unit 1402 is used to receive the encoding information of each character to be displayed from the CAN bus through the CAN bus data transceiver module 1410, and the text information processing module 1411 converts the encoding of each character into a preset encoding format that matches the character library; the character library processing module 1412 finds the bitmap corresponding to each character in the character library stored in the memory 1415 according to the encoding of the preset encoding format after conversion, and calculates the actual width of each character in the corresponding bitmap; the text rendering module 1413 draws and filters the text according to the actual width, character spacing, and character color of each character to be rendered, and sends all the characters and other HUD display contents finally rendered to the display driver module 1414. The display unit 1403 displays all the filtered characters to be displayed according to the electrical signal output by the display driver module 1414.
[0115] The present disclosure also provides a computer-readable storage medium storing at least one instruction, wherein the at least one instruction is used to be executed by a processor to implement the display control method described in the above embodiments.
[0116] The present disclosure also provides a computer program product, which includes computer instructions stored in a computer-readable storage medium; a processor of a computing device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computing device executes to implement the display control method described in the above-mentioned embodiments.
[0117] It should be noted that the technical solutions described in the present disclosure can be combined arbitrarily without conflict.
[0118] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.
Claims
1. A display control method, characterized in that: The display control method comprises: Determine at least one character library and a bitmap of characters included in each character library according to an application scenario of the vehicle; According to the encoding of each character, determine the font library corresponding to each character; Determine the number of each character in the corresponding character library according to the code of each character and the starting code of the corresponding character library, wherein the character library stores bitmaps of multiple characters; Determine the starting address of each character in the corresponding character library according to the serial number and the preset number of bytes occupied by a single character; From the font library corresponding to each character, a preset number of bytes of data starting from the start address are determined as a bitmap of each character; Get the actual width of each character to be displayed in the corresponding bitmap; Displaying all characters to be displayed according to the actual width of each character to be displayed and the preset interval; The step of obtaining the actual width of each character to be displayed in the corresponding bitmap includes: According to the bitmap of each character to be displayed, determining the left edge position and the right edge position of each character in the corresponding bitmap; The width between the left edge position and the right edge position of each character is determined as the actual width of each character.
2. The display control method according to claim 1, characterized in that: The display control method further includes: Performing filtering on each of the characters to obtain all filtered characters to be displayed; The method of displaying all characters to be displayed according to the actual width of each character to be displayed and the preset interval includes: According to the actual width of each character to be displayed and the preset interval, all the characters to be displayed after filtering are displayed.
3. The display control method according to claim 1, characterized in that: The display control method further includes: In the case that there are irregular characters in each of the characters that are not in the preset encoding format, the encoding of the irregular characters is converted into the preset encoding format according to the encoding lookup table, and the encoding lookup table includes the conversion relationship between different encoding formats and the preset encoding format.
4. The display control method according to claim 1, characterized in that: The step of determining the left edge position and the right edge position of each character in the bitmap according to the bitmap corresponding to each character to be displayed includes: Perform row traversal on the first non-zero column in the bitmap of each character, and determine the highest non-zero bit in the non-zero row as the left candidate edge bit of each character; Determine the highest bit in the left candidate edge position of each character as the left edge position of each character; Performing row traversal on the last non-zero column in the bitmap of each character, and determining the lowest non-zero bit in the non-zero row as the right candidate edge bit of each character; The lowest bit in the right candidate edge bits of each character is determined as the right edge position of each character.
5. The display control method according to claim 1, characterized in that: The step of determining the left edge position of each character in the corresponding bitmap according to the bitmap of each character to be displayed comprises: Perform row traversal on the first non-zero column in the bitmap of each character to determine the row where the maximum value of the row is located; The highest bit of the row where the row maximum value in the bitmap of each character is located is determined as the left edge position of each character.
6. The display control method according to claim 2, characterized in that: The filtering process is performed on each character to obtain all filtered characters to be displayed, including: Determine the color value of the pixel points adjacent to each black pixel point in the bitmap of each character; According to the color values of the pixels adjacent to each black pixel, the color values of the corresponding black pixels are trimmed to obtain all the characters to be displayed after filtering.
7. A display control device, characterized in that: The display control device comprises: a determination part, an acquisition part and a display part; The determining part is configured to determine at least one character library and a bitmap of characters included in each character library according to an application scenario of the vehicle; And, according to the encoding of each character, determine the font library corresponding to each character; And, according to the code of each character and the starting code of the corresponding character library, determining the number of each character in the corresponding character library, wherein the character library stores bitmaps of a plurality of characters; and, determining the starting address of each character in the corresponding character library according to the serial number and the preset number of bytes occupied by a single character; And, from the font library corresponding to each character, a preset number of bytes of data starting from the start address are determined as a bitmap of each character; The acquisition part is configured to acquire the actual width of each character to be displayed in the corresponding bitmap; The display section is configured to display all characters to be displayed according to the actual width of each character to be displayed and the preset interval; The acquisition part is specifically configured to determine the left edge position and the right edge position of each character in the corresponding bitmap according to the bitmap of each character to be displayed; The width between the left edge position and the right edge position of each character is determined as the actual width of each character.
8. A display control device, characterized in that: The display control device comprises: a processor and a memory; the processor is used to execute instructions stored in the memory to implement the display control method according to any one of claims 1 to 6.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores at least one instruction, and the at least one instruction is used to be executed by a processor to implement the display control method according to any one of claims 1 to 6.
10. A projection device, characterized in that: include: A display unit and a display control unit; The display control unit is configured as follows: Determine at least one character library and a bitmap of characters included in each character library according to an application scenario of the vehicle; According to the encoding of each character, determine the font library corresponding to each character; Determine the number of each character in the corresponding character library according to the code of each character and the starting code of the corresponding character library, wherein the character library stores bitmaps of multiple characters; Determine the starting address of each character in the corresponding character library according to the serial number and the preset number of bytes occupied by a single character; From the font library corresponding to each character, a preset number of bytes of data starting from the start address are determined as a bitmap of each character; Get the actual width of each character to be displayed in the corresponding bitmap; The step of obtaining the actual width of each character to be displayed in the corresponding bitmap includes: According to the bitmap of each character to be displayed, determining the left edge position and the right edge position of each character in the corresponding bitmap; Determine the width between the left edge position and the right edge position of each character as the actual width of each character; The display unit is configured to project all characters to be displayed onto the projected component according to the actual width of each character to be displayed and a preset interval, so that a visual confirmer can visually confirm the characters to be displayed.
Citation Information
Patent Citations
Character display method, character display device and character display system and storage medium
CN111986631A
Digital Instrument Display Method of Vehicle and Digital Instrument Display Apparatus Using Method
CN113138736A
Lightweight word stock display method and device, microprocessor and electronic equipment
CN117492577A