A screen display method and related apparatus

By introducing software filtering technology into electronic devices with OLED displays, bitmap data is processed based on sub-pixel rendering algorithms to optimize display edge effects, solving the problems of sub-pixel arrangement and rendering algorithms that cannot be updated by software, thus improving display performance.

CN114840164BActive Publication Date: 2025-11-14HUAWEI TECH CO LTD

Patent Information

Application Number
CN202110742740.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-02-02
Filing Date
2021-06-30
Publication Date
2025-11-14
Estimated Expiration
2041-06-30

AI Technical Summary

Technical Problem

The existing subpixel arrangement and rendering algorithms of OLED displays are difficult to optimize through software updates, making it difficult to improve display quality.

Method used

By introducing software filtering technology into electronic devices, bitmap data is processed based on subpixel rendering algorithms to optimize display edge effects. Combined with subpixel rendering algorithms to drive OLED display panels, display effects are optimized.

Benefits of technology

It solves the problem of subpixel rendering algorithms not being able to be updated online, optimizes the display effect of OLED display panels, and improves image clarity and color accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114840164B_ABST
    Figure CN114840164B_ABST
Patent Text Reader

Abstract

A screen display method is disclosed, characterized by the following steps: After acquiring bitmap data of content to be displayed, the electronic device performs software filtering on the bitmap data before sending it to the display screen; then, the software-filtered bitmap data is rendered using a sub-pixel rendering algorithm, and the OLED light-emitting points on the display panel are driven according to the RGB grayscale values ​​determined after sub-pixel rendering to display the content to be displayed. The filtering parameters of the software filtering are determined based on the sub-pixel rendering algorithm. The combined effect of software filtering and the sub-pixel rendering algorithm optimizes the display edges of the content to be displayed on the OLED display panel, thereby changing the display effect. This solves the problem of the inability to update the sub-pixel rendering algorithm online.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of electronic technology, and in particular to a screen display method and related apparatus. Background Technology

[0002] Sub-pixel rendering (SPR) technology is commonly used in electronic devices with organic light-emitting diode (OLED) displays. SPR technology leverages the differences in color perception between the human eye, changing the conventional model where a pixel is defined by red, green, and blue sub-pixels. By sharing some color sub-pixels among different pixels, it simulates the same pixel resolution with a relatively small number of sub-pixels, thereby reducing manufacturing processes and costs.

[0003] Subpixel rendering technology has two key elements: the arrangement of subpixels and the subpixel rendering algorithm. The subpixel arrangement is determined by the OLED display panel, defining the distribution pattern of different colored subpixels on the panel. The subpixel rendering algorithm is determined by the display controller, defining how the display device illuminates different colored subpixels based on input data. Both the subpixel arrangement and the subpixel rendering algorithm jointly affect the display effect. A suitable combination will result in a clear, delicate, smooth, and color-accurate image, while an unsuitable combination may lead to graininess, color cast, and fringing.

[0004] Therefore, the subpixel arrangement depends on the display panel device, and the subpixel rendering algorithm is often integrated into the display controller. Both are determined by hardware, resulting in long update cycles, poor customizability, and the inability to be updated via software. Once an electronic device equipped with a display screen has been selected, manufactured, produced, and sold, the subpixel arrangement and subpixel rendering algorithm of the display screen cannot be changed through software updates, making it difficult to optimize the display effect. How to optimize the display effect of the display screen is a problem that those skilled in the art are currently researching. Summary of the Invention

[0005] This application provides a screen display method and related apparatus, which can improve the screen display effect.

[0006] In a first aspect, this application provides a screen display method applied to an electronic device, the electronic device including an OLED display panel and a display controller integrating a sub-pixel rendering algorithm, characterized in that the method includes: the electronic device acquiring bitmap data of content to be displayed; the electronic device performing software filtering on the bitmap data, wherein the software filtering is determined based on the sub-pixel rendering algorithm and is used to optimize the display edges of the content to be displayed on the OLED display panel; the display controller performing sub-pixel rendering on the software-filtered bitmap data to determine the RGB grayscale value of each pixel; and the display controller driving OLED light-emitting points on the OLED display panel according to the RGB grayscale values ​​to display the content to be displayed.

[0007] In this embodiment, the content to be displayed may include text, characters, images, etc. The subpixel rendering algorithm is a hardware algorithm, which is difficult to update via software. After acquiring the bitmap data of the content to be displayed, the electronic device performs software filtering on the bitmap data before sending it to the display screen. Then, the software-filtered bitmap data is rendered subpixel-by-subpixel using the subpixel rendering algorithm to determine the RGB grayscale value of each pixel (including the grayscale values ​​of red, green, and blue pixels). The filtering parameters of the software filtering are determined based on the subpixel rendering algorithm. The combined effect of software filtering and the subpixel rendering algorithm optimizes the display edges of the content on the OLED display panel, thereby changing the display effect. This solves the difficulty of the subpixel rendering algorithm not being able to be updated online.

[0008] In conjunction with the first aspect, in some possible implementations, the electronic device performs software filtering on bitmap data, including: the bitmap data includes RGB three-channel bitmap data and single-channel grayscale bitmap data; when the bitmap data is single-channel grayscale bitmap data, the bitmap data is converted into RGB three-channel bitmap data; the electronic device performs single-pixel channel software filtering on the red pixel grayscale values ​​and blue pixel grayscale values ​​of the RGB three-channel bitmap data respectively; the electronic device keeps the green pixel grayscale values ​​of the bitmap data unchanged.

[0009] Bitmap data includes RGB three-channel bitmap data, which consists of the grayscale values ​​of each pixel's three channels (red, blue, and green). The red pixel grayscale value constitutes the red channel, the blue pixel grayscale value constitutes the blue channel, and the green pixel grayscale value constitutes the green channel. Single-pixel channel software filtering refers to applying software filtering to one channel of the RGB three-channel bitmap data.

[0010] When the bitmap data is RGB three-channel bitmap data, the electronic device performs single-pixel channel software filtering on the gray values ​​of red pixels and blue pixels in the bitmap data to determine the gray values ​​of red pixels and blue pixels after filtering; while the gray values ​​of green pixels remain unchanged.

[0011] Bitmap data also includes single-channel grayscale bitmap data, which is grayscale value data including one channel for each pixel (i.e., the grayscale values ​​of red, blue, and green pixels are the same for each pixel). When the bitmap data is single-channel grayscale bitmap data, the electronic device first converts it into RGB three-channel bitmap data. That is, if the size of the original bitmap (single-channel grayscale bitmap data) is [w, h], the electronic device allocates memory of size [w, h, 3] to convert the single-channel grayscale bitmap data into RGB three-channel bitmap data. Specifically, the electronic device performs single-pixel channel software filtering on the red and blue pixel grayscale values ​​in the RGB three-channel bitmap data to determine the filtered red and blue pixel grayscale values; the green pixel grayscale value remains unchanged.

[0012] In conjunction with the first aspect, in some possible implementations, the single-pixel channel software filtering process includes: the single-pixel channel software filtering process is perpendicular to the direction of the one-dimensional filtering process in the sub-pixel rendering algorithm. That is, the filtering parameters in the single-pixel channel software filtering process are determined based on the sub-pixel rendering algorithm. When the filter in the sub-pixel rendering algorithm is a one-dimensional filter in the horizontal direction, the filtering parameters in the single-pixel channel software filtering process are one-dimensional filtering parameters in the vertical direction; when the filter in the sub-pixel rendering algorithm is a one-dimensional filter in the vertical direction, the filtering parameters in the single-pixel channel software filtering process are one-dimensional filtering parameters in the horizontal direction.

[0013] In some possible implementations, the formula for one-dimensional filtering includes:

[0014]

[0015] In this matrix, dst(x,y) represents the grayscale value of the output pixel (x,y), and src(x,y) represents the grayscale value of the input pixel (x,y). kernel is the convolution kernel. For example, in a one-dimensional horizontal filter, if the kernel is (0.5, 0.5), then kernel's value is (0.5, 0.5). Since this kernel is a 1x2 matrix, x^' takes values ​​of 0 and 1 (kernel.cols = 2), and y^' takes a value of 0 (kernel.cols = 1). anchor is the anchor point, where anchor.x is the x-coordinate and anchor.y is the y-coordinate. For example, in a one-dimensional horizontal filter, the anchor point could be (0,0). Each value in the output matrix is ​​equal to the sum of the product of the corresponding elements of the input matrix and the convolution kernel.

[0016] In conjunction with the first aspect, in some possible implementations, before the electronic device performs software filtering on the bitmap data, the method further includes: the electronic device determining a sub-pixel rendering algorithm based on the display model. Different display models can have different sub-pixel rendering algorithms. The electronic device can determine the sub-pixel rendering algorithm integrated in the display model, and thus the electronic device can determine the filtering parameters for software filtering or the filtering parameters in single-pixel channel software filtering processing by using the filtering method employed in the sub-pixel rendering algorithm.

[0017] In conjunction with the first aspect, in some possible implementations, software filtering of bitmap data by the electronic device includes: when confirming that the electronic device is not in a shooting, sharing, or screen-casting scenario, the electronic device performs software filtering on the bitmap data. That is, the electronic device needs to distinguish different scenarios to determine whether software filtering of the bitmap data is necessary. When the electronic device receives a shooting, sharing, or screen-casting operation, it captures an image and sends it to other electronic devices via an application. The image data sent by the electronic device to other electronic devices is a bitmap. If the electronic device performs a preset filtering operation on the captured image, the sent image data will be a software-filtered bitmap. When other electronic devices receive this software-filtered bitmap, it affects the display effect of the image on other electronic devices. Therefore, the electronic device needs to confirm that it is not in a shooting, sharing, or screen-casting scenario before performing software filtering on the bitmap data.

[0018] In conjunction with the first aspect, in some possible implementations, the electronic device performs software filtering on the bitmap data of the content to be displayed, and then further includes: the electronic device saving the software-filtered bitmap data of the content to be displayed. Here, the electronic device saves the bitmap of the displayed content for future retrieval.

[0019] In some possible implementations, the method further includes: the electronic device calling the saved bitmap data of the software-filtered content to be displayed; the display controller performing sub-pixel rendering on the software-filtered bitmap data, determining the RGB grayscale value of each pixel, and driving the OLED light-emitting points on the OLED display panel to display the content to be displayed based on the RGB grayscale values. Since the electronic device saves the software-filtered bitmap data of the content to be displayed, it can directly call the software-filtered bitmap data for the same content to be displayed next time. That is, the electronic device only needs to perform rendering and software filtering operations once for newly appearing text, characters, or images, and can reuse the software filtering results thereafter, greatly reducing the computational load.

[0020] In conjunction with the first aspect, in some possible implementations, the electronic device acquires bitmap data of the content to be displayed, including: the electronic device determining a vector graphic of the content to be displayed; and the electronic device rasterizing the vector graphic of the content to be displayed to acquire bitmap data of the content to be displayed.

[0021] In conjunction with the first aspect, in some possible implementations, the data type of the content to be displayed includes text, characters, and images.

[0022] Secondly, this application provides an electronic device, including: one or more processors, one or more memories, a display screen, and a display screen controller integrating a subpixel rendering algorithm; the one or more memories are coupled to the one or more processors, the display screen, and the display screen controller; the one or more memories are used to store computer program code, the computer program code including computer instructions; when the computer instructions are executed on the processor, the electronic device causes the following to be performed:

[0023] The processor obtains the bitmap data of the content to be displayed.

[0024] The processor performs software filtering on the bitmap data. The software filtering is determined based on the sub-pixel rendering algorithm and is used to optimize the display edges of the content to be displayed on the OLED display panel.

[0025] The display controller performs sub-pixel rendering on the software-filtered bitmap data to determine the RGB grayscale value of each pixel.

[0026] The display controller drives the OLED light-emitting dots on the OLED display panel according to the RGB grayscale values ​​to display the content to be displayed.

[0027] In this embodiment, the content to be displayed may include text, characters, images, etc. The subpixel rendering algorithm is a hardware algorithm, which is difficult to update via software. After acquiring the bitmap data of the content to be displayed, the electronic device performs software filtering on the bitmap data before sending it to the display screen. Then, the software-filtered bitmap data is rendered subpixel by the subpixel rendering algorithm. The filtering parameters of the software filtering are determined based on the subpixel rendering algorithm. The combined effect of software filtering and the subpixel rendering algorithm optimizes the display edges of the content on the OLED display panel, thereby changing the display effect. This solves the difficulty of the subpixel rendering algorithm not being able to be updated online.

[0028] In conjunction with the second aspect, in some possible implementations, software filtering of bitmap data by the processor includes: the bitmap data includes RGB three-channel bitmap data and single-channel grayscale bitmap data; when the bitmap data is single-channel grayscale bitmap data, the processor converts the bitmap data into RGB three-channel bitmap data; the processor performs single-pixel channel software filtering on the red pixel grayscale value and the blue pixel grayscale value of the RGB three-channel bitmap data respectively; the green pixel grayscale value of the bitmap data remains unchanged.

[0029] In conjunction with the second aspect, in some possible implementations, the single-pixel channel software filtering process includes: the single-pixel channel software filtering process is perpendicular to the direction of the one-dimensional filtering process in the sub-pixel rendering algorithm. That is, the filtering parameters in the single-pixel channel software filtering process are determined based on the sub-pixel rendering algorithm. When the filter in the sub-pixel rendering algorithm is a one-dimensional filter in the horizontal direction, the filtering parameters in the single-pixel channel software filtering process are one-dimensional filtering parameters in the vertical direction; when the filter in the sub-pixel rendering algorithm is a one-dimensional filter in the vertical direction, the filtering parameters in the single-pixel channel software filtering process are one-dimensional filtering parameters in the horizontal direction.

[0030] In some possible implementations, the formula for one-dimensional filtering includes:

[0031]

[0032] In this matrix, dst(x,y) represents the grayscale value of the output pixel (x,y), and src(x,y) represents the grayscale value of the input pixel (x,y). kernel is the convolution kernel. For example, in a one-dimensional horizontal filter, if the kernel is (0.5, 0.5), then kernel's value is (0.5, 0.5). Since this kernel is a 1x2 matrix, x^' takes values ​​of 0 and 1 (kernel.cols = 2), and y^' takes a value of 0 (kernel.cols = 1). anchor is the anchor point, where anchor.x is the x-coordinate and anchor.y is the y-coordinate. For example, in a one-dimensional horizontal filter, the anchor point could be (0,0). Each value in the output matrix is ​​equal to the sum of the product of the corresponding elements of the input matrix and the convolution kernel.

[0033] In conjunction with the second aspect, in some possible implementations, before performing software filtering on the bitmap data by the processor, the method further includes: determining a sub-pixel rendering algorithm based on the display model by the processor. Different display models may have different sub-pixel rendering algorithms. The electronic device can determine the sub-pixel rendering algorithm integrated in the display model, and thus the electronic device can determine the filtering parameters for software filtering or the filtering parameters in single-pixel channel software filtering processing by the filtering method used in the sub-pixel rendering algorithm.

[0034] In conjunction with the second aspect, in some possible implementations, software filtering of bitmap data by the processor includes: when the electronic device is not in a shooting, sharing, or screen casting scenario, the processor performs software filtering on the bitmap data. That is, the electronic device needs to distinguish different scenarios to determine whether software filtering of the bitmap data is necessary. When the electronic device receives a shooting, sharing, or screen casting operation, it captures an image and sends it to other electronic devices through an application. The image data sent by the electronic device to other electronic devices is a bitmap. If the electronic device performs a preset filtering operation on the captured image, the sent image data will be a software-filtered bitmap. When other electronic devices receive this software-filtered bitmap, it affects the display effect of the image on other electronic devices. Therefore, the electronic device needs to confirm that it is not in a shooting, sharing, or screen casting scenario before performing software filtering on the bitmap data.

[0035] In conjunction with the second aspect, in some possible implementations, the processor performs software filtering on the bitmap data of the content to be displayed, and then further includes storing the software-filtered bitmap data of the content to be displayed in memory. Here, the electronic device stores the bitmap of the displayed content for future retrieval.

[0036] In conjunction with the second aspect, in some possible implementations, the electronic device also performs the following: calling the stored bitmap data of the software-filtered content to be displayed via the processor; performing sub-pixel rendering on the software-filtered bitmap data via the display controller to determine the RGB grayscale value of each pixel; and driving the OLED light-emitting points on the OLED display panel to display the content based on the RGB grayscale values. Since the electronic device stores the software-filtered bitmap data of the content to be displayed, it can directly call the software-filtered bitmap data for the same content to be displayed next time. That is, the electronic device only needs to perform rendering and software filtering operations once for newly appearing text, characters, or images, and can reuse the software filtering results thereafter, greatly reducing the computational load.

[0037] In conjunction with the second aspect, in some possible implementations, obtaining bitmap data of the content to be displayed by the processor includes: determining a vector graphic of the content to be displayed by the processor; and rasterizing the vector graphic of the content to be displayed by the processor to obtain bitmap data of the content to be displayed.

[0038] In conjunction with the second aspect, in some possible implementations, the data type of the content to be displayed includes text, characters, and images.

[0039] Thirdly, embodiments of this application provide a computer storage medium including computer instructions, which, when executed on an electronic device, cause a communication device to perform the screen display method in any of the possible implementations of any of the above aspects.

[0040] Fourthly, embodiments of this application provide a computer program product that, when run on a computer, causes the computer to execute the screen display method in any of the possible implementations of any of the above aspects. Attached Figure Description

[0041] Figure 1 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application;

[0042] Figure 2a and Figure 2b A schematic diagram illustrating a sub-pixel arrangement method provided in an embodiment of this application;

[0043] Figure 3a and Figure 3b A schematic diagram illustrating a scenario for an interface display principle provided in an embodiment of this application;

[0044] Figure 4 A schematic diagram illustrating the display effect of a subpixel rendering algorithm provided in an embodiment of this application;

[0045] Figure 5a and Figure 5bA filtering principle diagram of a sub-pixel rendering algorithm provided in an embodiment of this application;

[0046] Figure 6a and Figure 6b A filtering principle diagram of another sub-pixel rendering algorithm provided in this application embodiment;

[0047] Figure 7 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application;

[0048] Figure 8a and Figure 8b A schematic diagram illustrating the display effect of a subpixel rendering algorithm provided in an embodiment of this application;

[0049] Figure 9 A flowchart illustrating a screen display method provided in this application embodiment;

[0050] Figures 10a-10c A schematic diagram illustrating the display effect of a screen display method provided in an embodiment of this application;

[0051] Figures 11a-11c A schematic diagram illustrating the filtering principle of a screen display method provided in this application embodiment;

[0052] Figure 12 A schematic diagram illustrating yet another sub-pixel arrangement provided in an embodiment of this application;

[0053] Figure 13 A schematic diagram illustrating the display effect of another sub-pixel rendering algorithm provided in an embodiment of this application;

[0054] Figure 14 This is a schematic diagram of a screen display method provided in an embodiment of this application. Detailed Implementation

[0055] The technical solutions in the embodiments of this application will now be described with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " represents "or," for example, A / B can represent A or B; the word "and / or" in the text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "multiple" refers to two or more than two.

[0056] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying relative importance or implicitly indicating the number of indicated technical features. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of embodiments of this application, unless otherwise stated, "multiple" means two or more. The terms "middle," "left," "right," "upper," and "lower," etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings, and are only for the convenience of describing this application and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation, and therefore should not be construed as a limitation of this application.

[0057] The electronic device 100 involved in the embodiments of this application will be introduced first below.

[0058] See Figure 1 , Figure 1 A schematic diagram of the structure of an exemplary electronic device 100 provided in an embodiment of this application is shown.

[0059] Electronic device 100 may be a mobile phone, tablet computer, desktop computer, laptop computer, handheld computer, notebook computer, ultra-mobile personal computer (UMPC), netbook, as well as cellular phone, personal digital assistant (PDA), augmented reality (AR) device, virtual reality (VR) device, artificial intelligence (AI) device, wearable device, in-vehicle device, smart home device and / or smart city device. The embodiments of this application do not impose any special restrictions on the specific type of electronic device.

[0060] Electronic device 100 may include processor 110, external memory interface 120, internal memory 121, universal serial bus (USB) interface 130, charging management module 140, power management module 141, battery 142, antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, sensor module 180, button 190, motor 191, indicator 192, camera 193, display screen 194, and subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.

[0061] It is understood that the structures illustrated in the embodiments of the present invention do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0062] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). These different processing units may be independent devices or integrated into one or more processors.

[0063] The controller can generate operation control signals based on the instruction opcode and timing signals to complete the control of instruction fetching and execution.

[0064] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. This memory can store instructions or data that the processor 110 has just used or that are used repeatedly. If the processor 110 needs to use the instruction or data again, it can retrieve it directly from the memory. This avoids repeated accesses, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.

[0065] In some embodiments, the processor 110 may include one or more interfaces. Interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.

[0066] The I2C interface is a bidirectional synchronous serial bus, including a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 may include multiple I2C buses. The processor 110 can couple to the touch sensor 180K, charger, flash, camera 193, etc., through different I2C bus interfaces. For example, the processor 110 can couple to the touch sensor 180K through the I2C interface, enabling the processor 110 and the touch sensor 180K to communicate through the I2C bus interface, thereby realizing the touch function of the electronic device 100.

[0067] The I2S interface can be used for audio communication. In some embodiments, the processor 110 may include multiple I2S buses. The processor 110 can be coupled to the audio module 170 via the I2S bus to enable communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the I2S interface to enable the function of answering phone calls through a Bluetooth headset.

[0068] The PCM interface can also be used for audio communication, sampling, quantizing, and encoding analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 can be coupled via the PCM bus interface. In some embodiments, the audio module 170 can also transmit audio signals to the wireless communication module 160 via the PCM interface, enabling the function of answering phone calls through a Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.

[0069] The UART interface is a universal serial data bus used for asynchronous communication. This bus can be a bidirectional communication bus. It converts the data to be transmitted between serial and parallel communication. In some embodiments, the UART interface is typically used to connect the processor 110 and the wireless communication module 160. For example, the processor 110 communicates with the Bluetooth module in the wireless communication module 160 via the UART interface to implement Bluetooth functionality. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the UART interface to enable music playback through Bluetooth headphones.

[0070] The MIPI interface can be used to connect the processor 110 to peripheral devices such as the display screen 194 and the camera 193. The MIPI interface includes a camera serial interface (CSI) and a display serial interface (DSI). In some embodiments, the processor 110 and the camera 193 communicate via the CSI interface to enable the electronic device 100 to capture images. The processor 110 and the display screen 194 communicate via the DSI interface to enable the electronic device 100 to display images.

[0071] The GPIO interface can be configured via software. It can be configured as a control signal or a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 to a camera 193, a display screen 194, a wireless communication module 160, an audio module 170, a sensor module 180, etc. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, a MIPI interface, etc.

[0072] USB port 130 is a USB standard compliant interface, specifically a Mini USB port, Micro USB port, USB Type-C port, etc. USB port 130 can be used to connect a charger to charge electronic device 100, and can also be used for data transfer between electronic device 100 and peripheral devices. It can also be used to connect headphones for audio playback. This interface can also be used to connect other electronic devices, such as AR devices.

[0073] It is understood that the interface connection relationships between the modules illustrated in the embodiments of the present invention are merely illustrative and do not constitute a structural limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may also employ different interface connection methods or combinations of multiple interface connection methods as described in the above embodiments.

[0074] The charging management module 140 receives charging input from a charger. The charger can be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 receives charging input from the wired charger via the USB interface 130. In some wireless charging embodiments, the charging management module 140 receives wireless charging input via the wireless charging coil of the electronic device 100. While charging the battery 142, the charging management module 140 can also supply power to the electronic device via the power management module 141.

[0075] The power management module 141 connects the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, providing power to the processor 110, internal memory 121, display screen 194, camera 193, and wireless communication module 160, etc. The power management module 141 can also monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage current, impedance). In some other embodiments, the power management module 141 may also be located within the processor 110. In other embodiments, the power management module 141 and the charging management module 140 may be located in the same device.

[0076] The wireless communication function of electronic device 100 can be realized through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor and baseband processor, etc.

[0077] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in conjunction with tuning switches.

[0078] The mobile communication module 150 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In some embodiments, at least some functional modules of the mobile communication module 150 may be housed in the processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.

[0079] The modem processor may include a modulator and a demodulator. The modulator modulates the low-frequency baseband signal to be transmitted into a mid-to-high frequency signal. The demodulator demodulates the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After processing by the baseband processor, the low-frequency baseband signal is transmitted to the application processor. The application processor outputs sound signals through an audio device (not limited to speaker 170A, receiver 170B, etc.) or displays images or videos through the display screen 194. In some embodiments, the modem processor may be a separate device. In other embodiments, the modem processor may be independent of the processor 110 and may be housed in the same device as the mobile communication module 150 or other functional modules.

[0080] The wireless communication module 160 can provide solutions for wireless communication applications on the electronic device 100, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 2.

[0081] In some embodiments, antenna 1 of electronic device 100 is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, enabling electronic device 100 to communicate with networks and other devices via wireless communication technology. The wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technologies, etc. The GNSS may include the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), the BeiDou Navigation Satellite System (BDS), the Quasi-Zenith Satellite System (QZSS), and / or satellite-based augmentation systems (SBAS).

[0082] Electronic device 100 implements display functions through a GPU, a display screen 194, and an application processor. The GPU is a microprocessor for image processing, connected to the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations and for graphics rendering. Processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information.

[0083] Display screen 194 is used to display images, videos, etc. Display screen 194 includes a display panel. The display panel may be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a miniature LED, a microLED, a quantum dot light-emitting diode (QLED), etc. In some embodiments, electronic device 100 may include one or N displays 194, where N is a positive integer greater than 1.

[0084] Electronic device 100 can perform shooting functions through ISP, camera 193, video codec, GPU, display 194 and application processor.

[0085] The ISP (Image Signal Processor) is used to process data fed back from the camera 193. For example, when taking a picture, the shutter is opened, and light is transmitted through the lens to the camera's photosensitive element. The light signal is converted into an electrical signal, and the camera's photosensitive element transmits the electrical signal to the ISP for processing, transforming it into an image visible to the naked eye. The ISP can also perform algorithmic optimization of image noise, brightness, and skin tone. The ISP can also optimize parameters such as exposure and color temperature of the shooting scene. In some embodiments, the ISP can be set in the camera 193.

[0086] Camera 193 is used to capture still images or videos. An object is projected onto a photosensitive element by generating an optical image through the lens. The photosensitive element can be a charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, which is then passed to an ISP for conversion into a digital image signal. The ISP outputs the digital image signal to a DSP for processing. The DSP converts the digital image signal into image signals in standard RGB, YUV, or other formats. In some embodiments, the electronic device 100 may include one or N cameras 193, where N is a positive integer greater than 1.

[0087] Digital signal processors (DSPs) are used to process digital signals. Besides digital image signals, they can also process other digital signals. For example, when electronic device 100 selects a frequency, the DSP can perform Fourier transforms on the frequency energy.

[0088] Video codecs are used to compress or decompress digital video. Electronic device 100 may support one or more video codecs. Thus, electronic device 100 can play or record videos in various encoding formats, such as Moving Picture Experts Group (MPEG) 1, MPEG2, MPEG3, MPEG4, etc.

[0089] An NPU (Neural Processing Unit) is a computational processor for neural networks (NNs). By borrowing the structure of biological neural networks, such as the transmission patterns between neurons in the human brain, it can rapidly process input information and continuously learn on its own. NPUs enable intelligent cognitive applications in electronic devices, such as image recognition, facial recognition, speech recognition, and text understanding.

[0090] Internal memory 121 may include one or more random access memory (RAM) and one or more non-volatile memory (NVM).

[0091] Random access memory can include static random-access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM, for example, fifth generation DDR SDRAM is generally called DDR5 SDRAM), etc.

[0092] Non-volatile memory can include disk storage devices and flash memory.

[0093] Flash memory can be classified according to its operating principle, including NOR FLASH, NAND FLASH, 3D NAND FLASH, etc.; according to the level of the storage cell, including single-level cell (SLC), multi-level cell (MLC), triple-level cell (TLC), quad-level cell (QLC), etc.; and according to the storage specification, including universal flash storage (UFS) and embedded multimedia card (eMMC), etc.

[0094] The random access memory can be directly read and written by the processor 110. It can be used to store executable programs (such as machine instructions) of the operating system or other running programs, as well as user and application data.

[0095] Non-volatile memory can also store executable programs and user and application data, and can be pre-loaded into random access memory for direct reading and writing by the processor 110.

[0096] The external memory interface 120 can be used to connect to external non-volatile memory, thereby expanding the storage capacity of the electronic device 100. The external non-volatile memory communicates with the processor 110 through the external memory interface 120 to perform data storage functions. For example, music, video, and other files can be stored in the external non-volatile memory.

[0097] Electronic device 100 can implement audio functions, such as music playback and recording, through audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, and application processor.

[0098] The audio module 170 is used to convert digital audio information into analog audio signals for output, and also to convert analog audio input into digital audio signals. The audio module 170 can also be used for encoding and decoding audio signals. In some embodiments, the audio module 170 may be located in the processor 110, or some functional modules of the audio module 170 may be located in the processor 110.

[0099] The speaker 170A, also known as a "loudspeaker," is used to convert audio electrical signals into sound signals. The electronic device 100 can listen to music or make hands-free calls through the speaker 170A.

[0100] The receiver 170B, also known as the "earpiece," is used to convert audio electrical signals into sound signals. When the electronic device 100 answers a telephone call or voice message, the receiver 170B can be brought close to the ear to listen to the voice.

[0101] Microphone 170C, also known as a "microphone" or "voice transducer," is used to convert sound signals into electrical signals. When making a phone call or sending a voice message, the user can speak by bringing their mouth close to microphone 170C, inputting the sound signal into microphone 170C. Electronic device 100 may have at least one microphone 170C. In some embodiments, electronic device 100 may have two microphones 170C, which, in addition to collecting sound signals, can also perform noise reduction. In other embodiments, electronic device 100 may also have three, four, or more microphones 170C, which can collect sound signals, reduce noise, identify the sound source, and perform directional recording, etc.

[0102] The 170D headphone jack is used to connect wired headphones. The 170D headphone jack can be a USB 130 interface or a 3.5mm Open Mobile Terminal Platform (OMTP) standard interface, a CTIA (Cellular Telecommunications Industry Association of the USA) standard interface.

[0103] Pressure sensor 180A is used to sense pressure signals and convert them into electrical signals. In some embodiments, pressure sensor 180A can be disposed on display screen 194. There are many types of pressure sensors 180A, such as resistive pressure sensors, inductive pressure sensors, and capacitive pressure sensors. A capacitive pressure sensor may include at least two parallel plates with conductive material. When force is applied to pressure sensor 180A, the capacitance between the electrodes changes. Electronic device 100 determines the pressure intensity based on the change in capacitance. When a touch operation is applied to display screen 194, electronic device 100 detects the intensity of the touch operation based on pressure sensor 180A. Electronic device 100 can also calculate the touch position based on the detection signal from pressure sensor 180A. In some embodiments, touch operations applied to the same touch position but with different touch operation intensities can correspond to different operation commands. For example, when a touch operation with an intensity less than a first pressure threshold is applied to the SMS application icon, a command to view an SMS is executed. When a touch operation with an intensity greater than or equal to the first pressure threshold is applied to the SMS application icon, a command to create a new SMS is executed.

[0104] The gyroscope sensor 180B can be used to determine the motion attitude of the electronic device 100. In some embodiments, the gyroscope sensor 180B can determine the angular velocity of the electronic device 100 about three axes (i.e., the x, y, and z axes). The gyroscope sensor 180B can be used for image stabilization. For example, when the shutter is pressed, the gyroscope sensor 180B detects the angle of the shake of the electronic device 100, calculates the distance that the lens module needs to compensate based on the angle, and allows the lens to counteract the shake of the electronic device 100 by moving in the opposite direction, thus achieving image stabilization. The gyroscope sensor 180B can also be used in navigation and motion-sensing game scenarios.

[0105] The barometric pressure sensor 180C is used to measure air pressure. In some embodiments, the electronic device 100 calculates altitude using the air pressure value measured by the barometric pressure sensor 180C to assist in positioning and navigation.

[0106] The magnetic sensor 180D includes a Hall sensor. The electronic device 100 can use the magnetic sensor 180D to detect the opening and closing of the flip cover. In some embodiments, when the electronic device 100 is a flip phone, the electronic device 100 can detect the opening and closing of the flip cover using the magnetic sensor 180D. Then, based on the detected opening and closing state of the cover or the flip cover, features such as automatic flip unlocking can be set.

[0107] The 180E accelerometer can detect the magnitude of acceleration of electronic device 100 in various directions (typically three axes). When electronic device 100 is stationary, it can detect the magnitude and direction of gravity. It can also be used to identify the posture of electronic devices and applied to applications such as screen orientation switching and pedometers.

[0108] A distance sensor 180F is used to measure distance. Electronic device 100 can measure distance via infrared or laser. In some embodiments, during a shooting scene, electronic device 100 can utilize the distance sensor 180F to measure distance for rapid focusing.

[0109] The proximity sensor 180G may include, for example, a light-emitting diode (LED) and a light detector, such as a photodiode. The LED may be an infrared LED. The electronic device 100 emits infrared light outward through the LED. The electronic device 100 uses the photodiode to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that there is an object near the electronic device 100. When insufficient reflected light is detected, the electronic device 100 can determine that there is no object near the electronic device 100. The electronic device 100 may use the proximity sensor 180G to detect when a user holds the electronic device 100 close to their ear for a call, so as to automatically turn off the screen to save power. The proximity sensor 180G can also be used in holster mode and pocket mode for automatic unlocking and locking of the screen.

[0110] The ambient light sensor 180L is used to sense the brightness of ambient light. The electronic device 100 can adaptively adjust the brightness of the display screen 194 based on the sensed ambient light brightness. The ambient light sensor 180L can also be used to automatically adjust the white balance when taking pictures. The ambient light sensor 180L can also work with the proximity sensor 180G to detect whether the electronic device 100 is in a pocket to prevent accidental touches.

[0111] The fingerprint sensor 180H is used to collect fingerprints. The electronic device 100 can utilize the characteristics of the collected fingerprints to achieve fingerprint unlocking, accessing application locks, taking photos with fingerprints, answering calls with fingerprints, etc.

[0112] Temperature sensor 180J is used to detect temperature. In some embodiments, electronic device 100 uses the temperature detected by temperature sensor 180J to execute a temperature handling strategy. For example, when the temperature reported by temperature sensor 180J exceeds a threshold, electronic device 100 performs thermal protection by reducing the performance of a processor located near temperature sensor 180J to reduce power consumption. In other embodiments, when the temperature is below another threshold, electronic device 100 heats battery 142 to prevent abnormal shutdown of electronic device 100 due to low temperature. In still other embodiments, when the temperature is below yet another threshold, electronic device 100 boosts the output voltage of battery 142 to prevent abnormal shutdown due to low temperature.

[0113] Touch sensor 180K, also known as a "touch device," can be located on display screen 194. The touch sensor 180K and display screen 194 together form a touchscreen, also known as a "touchscreen." Touch sensor 180K detects touch operations applied to or near it. The touch sensor can transmit the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through display screen 194. In other embodiments, touch sensor 180K may also be located on the surface of electronic device 100, in a different position than display screen 194.

[0114] The bone conduction sensor 180M can acquire vibration signals. In some embodiments, the bone conduction sensor 180M can acquire vibration signals from the vibrating bone segments of the human vocal cords. The bone conduction sensor 180M can also contact the human pulse to receive blood pressure signals. In some embodiments, the bone conduction sensor 180M can also be incorporated into headphones to form bone conduction headphones. The audio module 170 can parse the voice signals from the vibrating bone segments of the vocal cords acquired by the bone conduction sensor 180M to realize voice functionality. The application processor can parse heart rate information from the blood pressure signals acquired by the bone conduction sensor 180M to realize heart rate detection functionality.

[0115] Buttons 190 include a power button, volume buttons, etc. Buttons 190 can be mechanical buttons or touch-sensitive buttons. Electronic device 100 can receive button input and generate key signal inputs related to user settings and function control of electronic device 100.

[0116] Motor 191 can generate vibration alerts. Motor 191 can be used for incoming call vibration alerts or for touch vibration feedback. For example, different vibration feedback effects can correspond to touch operations performed on different applications (such as taking photos, playing audio, etc.). Motor 191 can also correspond to different vibration feedback effects for touch operations performed on different areas of the display screen 194. Different application scenarios (such as time reminders, receiving messages, alarm clocks, games, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect can also be customized.

[0117] Indicator 192 can be an indicator light, used to indicate charging status, power changes, or to indicate messages, missed calls, notifications, etc.

[0118] The SIM card interface 195 is used to connect a SIM card. The SIM card can be inserted into or removed from the SIM card interface 195 to make contact with and separate from the electronic device 100. The electronic device 100 can support one or N SIM card interfaces, where N is a positive integer greater than 1. The SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, etc. Multiple cards can be inserted into the same SIM card interface 195 simultaneously. The multiple cards can be of the same or different types. The SIM card interface 195 is also compatible with different types of SIM cards. The SIM card interface 195 is also compatible with external memory cards. The electronic device 100 interacts with the network through the SIM card to realize functions such as calls and data communication. In some embodiments, the electronic device 100 uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100.

[0119] This application provides a screen display method that can improve the screen display effect.

[0120] To facilitate understanding, and in conjunction with the hardware structure of the electronic device 100 described above, the relevant principles and concepts involved in the embodiments of this application will be introduced below.

[0121] (1) Types of display screens 194.

[0122] Each pixel in the display 194 can be composed of three sub-pixels: red, green, and blue (RGB). The principle is that the three primary colors (RGB) can form any color. When different colors need to be displayed, the three sub-pixels emit light at different brightness levels, which visually mix to form the desired color. The arrangement of sub-pixels differs between different types of displays.

[0123] a.LCD screen

[0124] LCD screens primarily rely on their backlight layer for illumination. Since the backlight layer only uses white light, a color filter is needed to project the three primary colors. Simultaneously, to control the proportions of red, green, and blue, a liquid crystal layer exists between the backlight layer and the color filter, regulating the voltage. The droplets in this liquid crystal layer are enclosed in tiny cell structures, with one or more cells forming a pixel on the screen.

[0125] In an LCD screen, a single pixel consists of three cells, through which red, blue, and green are displayed on the screen respectively. Therefore, these three cells are called the red sub-pixel, green sub-pixel, and blue sub-pixel of each pixel. Figure 2a As shown, Figure 2a An example is shown of the arrangement of subpixels in an LCD screen. Here, G represents a green subpixel, B represents a blue subpixel, and R represents a red subpixel. A green subpixel G, a blue subpixel B, and a red subpixel R form a group, constituting one pixel. The order of the three color subpixels is not restricted.

[0126] b. OLED screen

[0127] OLED screens are displays made using organic light-emitting diodes (OLEDs). In an OLED screen, the smallest light-emitting unit can be considered a subpixel, and each subpixel can only emit a single color of light (red, blue, or green). Subpixels emitting red light are called red subpixels, those emitting blue light are called blue subpixels, and those emitting green light are called green subpixels. The subpixels of an OLED screen can be arranged in various ways; for example, one arrangement is as follows... Figure 2b As shown, each pixel consists of only two sub-pixels: red-green or blue-green. That is, each pixel contains one green sub-pixel and one red (or blue) sub-pixel. Pixels containing red and blue sub-pixels are arranged alternately in the horizontal and vertical directions. Figure 2b As can be seen, when displaying the same 3×3 pixels, the LCD screen has 9 sub-pixels in the horizontal direction, while this OLED screen only has 6 sub-pixels in the horizontal direction, reducing the number of sub-pixels by one-third.

[0128] Since all colors can be composed of the three primary colors RGB, and two colors cannot be combined to create all colors, in actual image display, the RGB primary colors are used instead of RGB. Figure 2b In the OLED screen with the arrangement shown, each pixel borrows the light-emitting points of its surrounding pixels to form the RGB three primary colors; this can also be called color borrowing. For example, in... Figure 2a In the first pixel P1, all three colors of sub-pixels are included, and no sub-pixels of any color need to be shared from the adjacent second pixel P2; while in... Figure 2b In the diagram, the third pixel P3 includes red and green sub-pixels. It can share a blue sub-pixel with the adjacent fourth pixel P4. Here, the blue sub-pixel in P4 is called the compensation sub-pixel of the third pixel P3. A pixel can share sub-pixels with multiple pixels. The third pixel P3 can also share a blue sub-pixel with the fifth pixel P5, and a red sub-pixel with the sixth pixel P6.

[0129] There are other ways to arrange the subpixels of an OLED screen, which will not be listed here.

[0130] (2) Interface display principle

[0131] The display interface of electronic device 100 includes text, images, etc. For example... Figure 3a As shown, the example of displaying "HUAWEI" on device 100 triggered by an application is used for illustration. The application can be a reading app, a browsing app, a text editing application, etc. For example, when a user opens a file "document1.txt" containing the characters "HUAWEI" through a text editing application in a file management application, the text editing application needs to display the characters on the user interface. Therefore, it will call the system's text display interface to send the character encoding corresponding to "HUAWEI" to the text display module or frame of the electronic device for display. The text display module or frame of the electronic device 100 performs character layout for the field "HUAWEI" according to the character encoding corresponding to "HUAWEI", and determines the display format (including size, color, font, character spacing, line spacing, etc.) and display position (which can be a pixel coordinate, located at the upper left corner of the display position).

[0132] The electronic device 100 then queries the display data corresponding to each character in the corresponding font file (for example, for the character "E", the electronic device 100 queries the display data of the character "E" in the font file of the example font A). The commonly used font file type is vector font, in which the display data of the characters is stored in the form of vector graphics, specifically, the character outline is described by quadratic or cubic Bézier curves.

[0133] Then, the electronic device 100 renders the vector graphic of the display data for each character. The rendering process includes rasterization, which converts the vector graphic into a bitmap. A bitmap is composed of multiple pixels, which can be arranged and colored differently to form a pattern. Here, if the image to be displayed is a color image, the bitmap of the image to be displayed includes grayscale data of the three RGB channels of each pixel (the red grayscale value of each pixel forms a red vector matrix, the blue grayscale value forms a blue vector matrix, and the green grayscale value forms a green vector matrix); if the image to be displayed is a grayscale image, since the grayscale values ​​of the three primary colors (red, green, and blue) are the same in a grayscale image, the bitmap of the image to be displayed includes grayscale data of one channel for each pixel (a grayscale value vector matrix). For example, the pixels of a character bitmap usually only include grayscale data of one channel. The grayscale value ranges from 0 to 255.

[0134] For example, an image with a resolution of 500*338, and being a color image, has three grayscale vector matrices corresponding to its pixel matrix. These matrices are: a red (R) vector matrix (500*338), a green (G) vector matrix (500*338), and a blue (B) vector matrix (500*338). If the values ​​in the first row and first column of each matrix are R: 240, G: 223, B: 204, then the color of this pixel is (240, 223, 204).

[0135] For example, if an image has a resolution of 500*338 and is a grayscale image, since each pixel in the bitmap has the same grayscale value of the three primary colors of red, green and blue, the pixel matrix of the image corresponds to a vector matrix (500*338 in size). If the value of the first row and first column of this matrix is ​​240, then the color of this pixel is (240, 240, 240).

[0136] Next, the electronic device 100 performs blending and layer overlay on the rendered bitmap. Blending refers to pasting the bitmap onto the corresponding position on the screen, with the size of the pasted image matching the size of the application interface. Blending methods include CPU drawing and GPU drawing. Layer overlay refers to merging the application interfaces of multiple applications, as well as interface display elements such as status bars, navigation bars, and floating windows, into a single display interface. This display interface is stored as a bitmap with grayscale values.

[0137] Finally, the electronic device 100 sends the superimposed interface to the display screen, and the display screen controller illuminates the light-emitting points (sub-pixels) on the display screen based on a sub-pixel rendering algorithm, thus displaying the interface to be displayed on the display screen. For example, as shown... Figure 3b As shown, Figure 3b Taking the character "E" as an example, the electronic device 100 obtains the display data (vector image) of the character "E", renders the vector image to generate a bitmap composed of individual pixels, overlays the bitmap with other display content to form the interface to be displayed, and finally sends it to the display screen. The electronic device 100 then illuminates the light-emitting points on the screen based on the sub-pixel rendering algorithm.

[0138] Subpixel rendering algorithms can be integrated into the display controller, defining how the display device illuminates subpixels of different colors based on input data. Depending on the subpixel rendering algorithm, the way subpixels are illuminated on the display device will also differ. For example, the subpixel arrangement on the display device of electronic device 100 might be as follows: Figure 2b Regarding the sub-pixel arrangement shown in the figure, such as Figure 4 As shown, when a single white pixel is input (its RGB grayscale value is (255, 255, 255)), using subpixel rendering algorithm one, three subpixels (one red, one blue, and one green) are illuminated on the display device, allowing the human eye to perceive white. Using subpixel rendering algorithm two, five subpixels (two red, two blue, and one green) are illuminated on the display device, also allowing the human eye to perceive white. When the same single colored pixel is input, using subpixel rendering algorithm one, the same effect is achieved by illuminating the same pixel on the display device. Figure 4 The three sub-pixels shown (red, blue, and green) have their display brightness determined based on the RGB grayscale value of each individual color pixel; using sub-pixel rendering algorithm two, they are also illuminated on the display device. Figure 4 The display brightness of the five sub-pixels shown is determined based on the RGB grayscale value of each single-pixel color point.

[0139] Figure 5a and Figure 5bThe technical principles of subpixel rendering algorithm one are explained in detail.

[0140] Electronic device 100 sends a bitmap of the interface to be displayed to a display screen, with the subpixel arrangement on the display screen as... Figure 2b Taking the subpixel arrangement shown as an example, the display controller of the display screen lights up the light-emitting points (subpixels) on the display screen based on the subpixel rendering algorithm.

[0141] like Figure 5a As shown, the bitmap of the interface to be displayed includes grayscale data of the RGB three channels, while a pixel on the display screen has only two light-emitting points, corresponding to a green sub-pixel and a red / blue sub-pixel respectively. Figure 5a Taking pixels (n-2, m), (n-1, m), and (n, m) as examples, using sub-pixel rendering algorithm one, pixel (n-1, m) can share blue sub-pixels with its neighboring pixel (n-2, m), and pixel (n, m) can share red sub-pixels with its neighboring pixel (n-1, m). Green sub-pixels are one-to-one and do not need to be shared with other pixels.

[0142] like Figure 5b As shown, using sub-pixel rendering algorithm one, the grayscale value of each luminous point on the display screen is determined. Pixel (n-1, m) and its neighboring pixel (n-2, m) share a blue sub-pixel, so the grayscale value of the blue sub-pixel of pixel (n-1, m) is B(n-1, m) = 0.5b(n-2, m) + 0.5b(n-1, m); pixel (n, m) and its neighboring pixel (n-1, m) share a red sub-pixel, so the grayscale value of the red sub-pixel of pixel (n, m) is R(n, m) = 0.5r(n-1, m) + 0.5r(n, m); the grayscale value of the green sub-pixel is G(n, m) = g(n, m). Wherein, Figure 5b The shared parameter of 0.5 between neutron pixels is merely an example and does not constitute a limitation on the embodiments of this application.

[0143] Figure 6a and Figure 6b The technical principles of subpixel rendering algorithm two are explained in detail.

[0144] Electronic device 100 sends a bitmap of the interface to be displayed to a display screen, with the subpixel arrangement on the display screen as... Figure 2b Taking the sub-pixel arrangement shown as an example, the display controller of the display screen illuminates the light-emitting points (sub-pixels) on the display screen based on the sub-pixel rendering algorithm.

[0145] like Figure 6aAs shown, the bitmap of the interface to be displayed includes grayscale data of the RGB three channels, while a pixel on the display screen has only two light-emitting points, corresponding to a green sub-pixel and a red / blue sub-pixel respectively. Figure 6a Taking pixels (n-2, m), (n-1, m), (n, m), (n-2, m-1), (n-1, m-1), and (n, m-1) as an example, using sub-pixel rendering algorithm two, pixel (n-1, m) can share blue sub-pixels with its surrounding pixels (n-2, m-1), (n-1, m-1), and (n-2, m). Pixel (n, m) can share red sub-pixels with its surrounding pixels (n-1, m-1), (n, m-1), and (n-1, m). Green sub-pixels are one-to-one and do not need to be shared with other pixels.

[0146] like Figure 6b As shown, using sub-pixel rendering algorithm two, the grayscale value of the pixel corresponding to each luminous point on the display screen is determined. Pixel (n-1, m) shares a blue sub-pixel with its surrounding pixels (n-2, m-1), (n-1, m-1), and (n-2, m). Therefore, the grayscale value of the blue sub-pixel of pixel (n-1, m) is B(n-1, m) = 0.25b(n-2, m-1) + 0.25b(n-1, m-1) + 0.25b(n-2, m) + 0. .25b(n-1, m); Pixel (n, m) shares a red sub-pixel with its surrounding pixels (n-1, m-1), (n, m-1), and (n-1, m). Therefore, the grayscale value of the red sub-pixel of pixel (n, m) is R(n, m) = 0.25r(n-1, m-1) + 0.25r(n, m-1) + 0.25r(n-1, m) + 0.25r(n, m); the grayscale value of the green sub-pixel is G(n, m) = g(n, m). Wherein, Figure 6b The shared parameter of 0.25 between neutron pixels is merely an example and does not constitute a limitation on the embodiments of this application.

[0147] Currently, subpixel rendering algorithms exist in the form of hardware algorithms, which are fixed in DDIC or processing chips and are difficult to update through software.

[0148] The above description provides an example of the character display principle. The interface content of the electronic device 100 includes characters and images. Similarly, regarding the character display principle of the electronic device 100, for the image display principle, the electronic device 100 performs image decoding to obtain the image data to be displayed. Based on the image data to be displayed in the display interface, the image display module or frame of the electronic device 100 arranges the image to be displayed according to the image data, determining the display format (including display size, color, etc.) and display position (which can be a pixel coordinate, positioned at the upper left corner of the display position). The image data is stored in the form of a vector graphic or a bitmap. Then, the electronic device 100 renders the vector graphic of the image to be displayed to generate a bitmap.

[0149] Next, the electronic device 100 blends and overlays the rendered bitmaps, placing them in the corresponding positions on the screen. The size of this overlay is the same as the size of the application's display screen. Then, it merges the application interfaces of multiple applications, along with interface display elements such as the status bar and navigation bar, into a single display interface. Finally, the electronic device 100 sends the overlaid display interface to the display screen. The display screen's controller, based on the sub-pixel rendering algorithm and the arrangement of the light-emitting points (sub-pixels) on the display screen, illuminates the light-emitting points, and the display interface is then displayed on the screen.

[0150] In this embodiment, displaying a single white pixel requires red, green, and blue sub-pixels to emit light. For an LCD screen, a pixel consists of three colored sub-pixels, so one pixel can display a single white pixel; however, for the diamond arrangement of the aforementioned OLED screen, a pixel only has two colored sub-pixels, so it needs to borrow sub-pixels from surrounding pixels to display a single white pixel.

[0151] Based on the above-described interface display principle, the hardware structure of an electronic device 101 with a display screen is described below, and the sub-pixel rendering algorithm in the display principle of the OLED display screen is further explained. In some embodiments, the electronic device 101 can be mounted on or integrated on an electronic device 100, and the electronic device 100 can include the electronic device 101.

[0152] Figure 7A hardware structure diagram of an electronic device 101 is shown. The electronic device 101 includes an application processor (AP) and a display module, wherein the display module includes a display screen and a display driver integrated circuit (DDIC). The DDIC is one of the main components of the display screen controller, and it integrates a sub-pixel rendering algorithm. The DDIC drives the display screen and illuminates the light-emitting points (sub-pixels) on the display screen based on the sub-pixel rendering algorithm. The display screen can be the aforementioned OLED screen, and the sub-pixels can be arranged in a diamond pattern. The application processor (AP) typesets, renders, and overlays the interface content (including text, images, etc.) into a bitmap and sends it to the DDIC. The DDIC filters and samples the received bitmap. After filtering and sampling, the DDIC determines the display brightness of the sub-pixels and converts the display brightness of each sub-pixel into a form such as voltage or current to drive the OLED screen, illuminating the light-emitting points (sub-pixels) on the OLED screen with the corresponding voltage or current. In some embodiments, the DDIC and AP can be integrated into the same chip. Optionally, the DDIC can also be integrated into the OLED display screen.

[0153] The bitmap sent by the application processor (AP) to the DDIC is a rasterized bitmap, composed of individual pixels. The bitmap includes either the grayscale values ​​of the RGB channels for each pixel or the grayscale value of one channel. Upon receiving the bitmap from the AP, the DDIC processes it by dividing it into three channels: green, red, and blue. Combining this with a sub-pixel rendering algorithm (including filtering and sampling) and the sub-pixel arrangement of the display screen, the DDIC determines the display brightness of each sub-pixel. The DDIC then converts the display brightness of each sub-pixel into a form such as voltage or current, driving the display screen and illuminating the corresponding light-emitting points.

[0154] For example in Figure 7In the DDIC (Digital Direct Image Processing) module, the bitmap processing is divided into green, red, and blue channels. The green channel processes the green vector matrix of the bitmap (including the grayscale value of each green sub-pixel), the red channel processes the red vector matrix (including the grayscale value of each red sub-pixel), and the blue channel processes the blue vector matrix (including the grayscale value of each blue sub-pixel). Since there is only one red and one blue sub-pixel for every two pixels in the diamond pixel arrangement of an OLED screen, these red and blue sub-pixels need to be used as compensation pixels for surrounding pixels. Their grayscale values ​​are related to their surrounding pixels. Therefore, for the red and blue channels, the electronic device 100 needs to filter and sample the bitmap to determine the grayscale values ​​of the red and blue sub-pixels on the OLED screen. Therefore, in the red and blue channels, the DDIC needs to filter and sample the input bitmap. Then, based on the filtered and sampled bitmap, the DDIC transforms the pixel grayscale values ​​of the filtered bitmap into voltage or current forms to drive the OLED screen, illuminating the red and blue light-emitting points on the OLED screen with the corresponding voltage or current. Furthermore, since each pixel in the diamond arrangement of the OLED screen has a green subpixel, and the display brightness of the green subpixel is independent of other pixels, no filtering or sampling is required for the green channel. The DDIC can directly input the bitmap into the green channel, transforming the pixel grayscale values ​​of the bitmap into voltage or current forms to drive the OLED screen, illuminating the green light-emitting points on the OLED screen with the corresponding voltage or current.

[0155] Regarding the filtering methods described above, two exemplary filtering methods are introduced below: one-dimensional filtering and two-dimensional filtering.

[0156] One-dimensional filtering can be either horizontal or vertical filtering, and will be referred to as 1D-SPR from now on.

[0157] The formula for one-dimensional filtering can be:

[0158]

[0159] Where dst(x,y) is the grayscale value of the output pixel (x,y), and src(x,y) is the grayscale value of the input pixel (x,y). kernel is the convolution kernel. For example, in the above one-dimensional horizontal filtering, the filter kernel is (0.5, 0.5), so the value of kernel is (0.5, 0.5). This filter kernel is a 1x2 matrix, so x′ takes the values ​​0 and 1, i.e., kernel.cols is 2, and y′ takes the value 0, i.e., kernel.cols is 1. anchor is the anchor point, anchor.x is the x-coordinate of the anchor point, and anchor.y is the y-coordinate of the anchor point. For example, in the above one-dimensional horizontal filtering, the anchor point is (0,0). Each value in the output matrix is ​​equal to the sum of the product of the corresponding elements of the input matrix and the convolution kernel.

[0160] Taking horizontal filtering as an example, its filter kernel can be described as (0.5, 0.5). For example, for the red channel, the electronic device 100 performs horizontal filtering on the input bitmap with a filter kernel of (0.5, 0.5). In the filtering result, the gray value of each pixel is the average of the gray values ​​of two adjacent pixels in the input bitmap, that is, L_r(x,y)=(I_r(x,y)+I_r(x+1,y)) / 2, where L_r(x,y) is the gray value of the red pixel of the output pixel (x,y), I_r(x,y) is the gray value of the red pixel of the input pixel (x,y), the horizontal coordinate of the anchor point is 0, the vertical coordinate is 0, and the kernel value is (0.5, 0.5). Based on the above one-dimensional filtering formula, the gray value of the red pixel of the pixel (x,y) can be obtained as L_r(x,y)=(I_r(x,y)+I_r(x+1,y)) / 2.

[0161] Here, you can refer to the above. Figure 5a and Figure 5b The filtering method of the sub-pixel rendering algorithm shown is a one-dimensional filtering in the horizontal direction, with a filter kernel of (0.5, 0.5).

[0162] By sampling and driving the above filtering results, and based on the grayscale value of each pixel in the red channel, combined with the sub-pixel arrangement on the display screen, DDIC can determine the display brightness of each red sub-pixel on the display screen. That is, the display brightness of each red / blue sub-pixel is related to the grayscale values ​​of two adjacent pixels in the bitmap of the input channel.

[0163] like Figure 8aAs shown, after horizontal filtering and sampling, a white dot can be displayed using only red, green, and blue sub-pixels. It can be seen that because filtering is only performed horizontally, green sub-pixels are exposed at the edges of horizontal lines and the horizontal strokes of text. When the electronic device 100 displays the horizontal black-and-white boundary line, it visually causes a colored edge (green edge) phenomenon. Since the human eye is most sensitive to green, the exposed green sub-pixels will produce a more obvious green edge and a stronger grainy appearance.

[0164] Two-dimensional filtering, which performs filtering in both the horizontal and vertical directions, will be referred to hereafter as 2D-SPR. For example, the filter kernel of a two-dimensional filter can be described as... For example, for the red channel, the electronic device 100 applies a filter kernel to the input bitmap as follows: The two-dimensional filtering results in a grayscale value for each pixel that is the average of the grayscale values ​​of the four pixels within a 2x2 area surrounding the input bitmap, i.e., L_r(x,y)=(I_r(x,y)+I_r(x+1,y)+I_r(x,y+1)+I_r(x+1,y+1)) / 4. (See the above for reference.) Figure 6a and Figure 6b The filtering method shown in the second sub-pixel rendering algorithm is two-dimensional filtering, and the filter kernel is...

[0165] By sampling and driving the above filtering results, and based on the grayscale value of each pixel in the red channel, combined with the sub-pixel arrangement on the display screen, DDIC can determine the display brightness of each red sub-pixel on the display screen. That is, the display brightness of each red / blue sub-pixel is related to the grayscale values ​​of the four adjacent pixels in the horizontal and vertical directions of the bitmap within the input channel.

[0166] like Figure 8b As shown, after two-dimensional filtering and sampling, a white dot can be displayed using two red sub-pixels, two blue sub-pixels, and one green sub-pixel. It can be seen that all green sub-pixels are surrounded by red and blue sub-pixels, and the brightness at the edges is lower (25% red display brightness and 25% blue display brightness), creating a certain brightness gradient effect. At this point, when the electronic device 100 displays a horizontal black-and-white boundary line, there is no visually noticeable colored edge (green edge).

[0167] In summary, the subpixel rendering algorithm determines how DDIC illuminates different colored subpixels on the display screen based on input data. However, the subpixel rendering algorithm is a hardware algorithm and cannot be updated via software. Therefore, under horizontal filtering, when displaying horizontal black-and-white boundaries (such as the edges of horizontal strokes in text) on an OLED screen with a diamond pixel arrangement, a color fringing phenomenon will visually occur. Once the electronic device 101 is selected, manufactured, produced, and sold, the subpixel arrangement and subpixel rendering algorithm of the electronic device 101 cannot be changed through software updates, making it difficult to optimize the display effect.

[0168] This application provides a screen display method that can solve the color fringing phenomenon and improve the screen display effect without changing the sub-pixel arrangement of the display screen or the sub-pixel rendering algorithm.

[0169] The following describes the steps of a screen display method provided in this application, such as... Figure 9 As shown, it may include:

[0170] Step S101: Electronic device 100 determines the vector graphic of the content to be displayed.

[0171] Electronic device 100 acquires content to be displayed, which may be text, characters, images, etc. Electronic device 100 determines the display format (display position, size, color, etc.) of the content to be displayed and forms a vector graphic of the content to be displayed.

[0172] Optionally, the electronic device 100 determines the display format of the image on the display interface based on the image data to be displayed and the display position in the content to be displayed, and determines the display format of the text on the display interface based on the text data to be displayed, the display position, and the font file in the content to be displayed, thereby forming a vector graphic of the content to be displayed.

[0173] Step S102: The electronic device 100 renders the vector image of the content to be displayed to generate a bitmap of the content to be displayed.

[0174] After determining the vector graphic of the content to be displayed, the electronic device 100 renders the vector graphic, that is, rasterizes the vector graphic, converting the image represented by the vector graphic into a bitmap. A bitmap is composed of multiple pixels and includes grayscale data for each pixel across three RGB channels or one channel. Here, the electronic device 100 generates the bitmap of the content to be displayed.

[0175] In some embodiments, steps S101 and S102 are optional, and the electronic device 100 can directly obtain the bitmap of the content to be displayed. For example, the electronic device 100 receives the bitmap of the content to be displayed sent by another device; or the electronic device 100 calls the bitmap of the content to be displayed stored in its own memory; and so on.

[0176] Step S103: The electronic device 100 performs software filtering on the bitmap of the content to be displayed.

[0177] After generating a bitmap of the content to be displayed, the electronic device 100 performs software filtering on the bitmap to generate a software-filtered bitmap. Various software filtering methods can be used, and this embodiment does not limit the specific methods. In some embodiments, the filtering parameters are determined based on a sub-pixel rendering algorithm, and this software filtering is used to optimize the display edges of the content to be displayed on the display panel of the screen.

[0178] Optionally, the processing direction of the software filtering is perpendicular to the one-dimensional filtering processing direction in the subpixel rendering algorithm.

[0179] For example, when the resampling filter kernel used in the subpixel rendering algorithm in DDIC is (0.5, 0.5), the electronic device 100 performs software filtering on the bitmap of the content to be displayed, with the filter kernel being (0.5, 0.5). Among them, software filtering Together with the resampling filter (0.5, 0.5), they form a virtual resampling filter.

[0180] When the resampling filter kernel used in the subpixel rendering algorithm is Then, electronic device 100 filters the bitmap of the content to be displayed, with a filter kernel of (0.5, 0.5). This filtering is performed by software (0.5, 0.5) and a resampling filter. Together they form a virtual resampling filter As can be seen, both of the above situations are designed to achieve the effect of two-dimensional filtering in the final filtering result.

[0181] In some embodiments, the bitmap of the content to be displayed includes RGB three-channel bitmap data and single-channel grayscale bitmap data. The RGB three-channel bitmap data includes the grayscale values ​​of the three RGB channels for each pixel (the grayscale values ​​of the red, blue, and green pixels for each pixel). Since the grayscale bitmap data has the same red, blue, and green pixel values ​​for each pixel, the single-channel grayscale bitmap includes the grayscale value data of one channel for each pixel. The red pixel grayscale value of each pixel constitutes the red channel in the bitmap data, the blue pixel grayscale value of each pixel constitutes the blue channel, and the green pixel grayscale value of each pixel constitutes the green channel.

[0182] When the bitmap of the content to be displayed includes RGB three-channel bitmap data, the electronic device performs single-pixel channel software filtering on the grayscale values ​​of the red and blue pixels in the bitmap data to determine the filtered grayscale values ​​of the red and blue pixels; the grayscale value of the green pixels remains unchanged. Single-pixel channel software filtering refers to performing software filtering on one channel of the RGB three-channel bitmap data. At this time, the electronic device 100 acquires the filtered bitmap.

[0183] For example, the bitmap of the content to be displayed includes a first red pixel grayscale value, a first blue pixel grayscale value, and a first green pixel grayscale value for each pixel. The electronic device 100 filters the red channel and the blue channel of the bitmap respectively to obtain a filtered bitmap, which includes a second red pixel grayscale value, a second blue pixel grayscale value, and a first green pixel grayscale value for each pixel.

[0184] When the bitmap of the content to be displayed includes single-channel grayscale bitmap data, the electronic device first converts the single-channel grayscale bitmap data into RGB three-channel bitmap data. If the size of the original bitmap (the bitmap of the content to be displayed) is [w, h], the electronic device 100 allocates memory of size [w, h, 3] to convert the single-channel grayscale bitmap data into RGB three-channel bitmap data (i.e., the grayscale values ​​of the red, blue, and green pixels of each pixel are the same). The electronic device then performs single-pixel channel software filtering on the grayscale values ​​of the red and blue pixels in the RGB three-channel bitmap data to determine the filtered grayscale values ​​of the red and blue pixels; the grayscale value of the green pixels remains unchanged. At this point, the electronic device 100 obtains the filtered bitmap. This filtered bitmap includes RGB three-channel bitmap data.

[0185] For example, the bitmap of the content to be displayed includes the first pixel grayscale value of each pixel, that is, the red pixel grayscale value, blue pixel grayscale value, and green pixel grayscale value of each pixel are all the first pixel grayscale value. First, the electronic device copies the grayscale bitmap to the green channel. Then, the electronic device 100 filters the grayscale bitmap to obtain the second pixel grayscale value. The electronic device 100 copies the filtered grayscale bitmap to the red channel and the blue channel respectively to obtain the filtered bitmap. The filtered bitmap includes the red pixel grayscale value (second pixel grayscale value), the blue pixel grayscale value (second pixel grayscale value), and the green pixel grayscale value (first pixel grayscale value) of each pixel.

[0186] For example, the following uses the letter "E" as an example. Using Source Han Sans font, size 8, the bitmap obtained after rasterization and gamma mapping is as follows. The size of this bitmap is 7*11. Character bitmaps typically include single-channel grayscale bitmap data, and the specific bitmap data is shown in Table 1.

[0187] Table 1

[0188]

[0189] The bitmap data of the letter "E" above is subjected to software filtering. Specifically, the electronic device performs single-pixel channel software filtering on the gray values ​​of the red and blue pixels, while the gray value of the green pixels remains unchanged. The resulting bitmap data after software filtering is shown in Table 2.

[0190] Table 2

[0191]

[0192]

[0193] In some embodiments, if the bitmap to be displayed is in a non-linear domain, degamma mapping (transforming from the non-linear domain to the linear domain) needs to be performed before software filtering, and gamma mapping (transforming from the linear domain back to the non-linear domain) needs to be performed after software filtering. If the bitmap to be displayed is in the linear domain, filtering is performed directly. In practice, degamma mapping and gamma mapping may lead to loss of data precision and introduce errors.

[0194] In some embodiments, the filtering parameters in the above-described software filtering method are determined by combining information from the display screen of the electronic device 100. The display screen information includes the display screen model, quantity, and display orientation, etc.

[0195] Different displays may have different models. Electronic device 100 can determine the sub-pixel rendering algorithm integrated in the display by the display model, and electronic device 100 can determine the software filtering method of electronic device 100 by the filtering method used in the sub-pixel rendering algorithm.

[0196] The electronic device 100 may have multiple displays. These multiple displays may be of different models, and the software filtering method of the electronic device 100 will also be different for different display models. When the electronic device 100 switches between displays, it can switch the software filtering method of the content to be displayed. The electronic device 100 determines the software filtering method for the content to be displayed based on the display currently showing the content.

[0197] The display screen of electronic device 100 can be positioned in landscape (90 degrees and 270 degrees) or portrait (0 degrees and 180 degrees). Electronic device 100 determines its software filtering method based on the current display orientation. Since the subpixel rendering algorithm is a hardware algorithm, the filtering direction within it is fixed. When the display orientation changes, the layout of the content to be displayed also changes, and the filtering parameters of the software filter must be changed accordingly. For example, if the resampling filter kernel used in the subpixel rendering algorithm is (0.5, 0.5), and the current display orientation of electronic device 100 is portrait (0 degrees), then the filter kernel of the software filter of electronic device 100 will be... If the current display orientation of electronic device 100 is landscape (90 degrees), then the filter kernel of the software filtering of electronic device 100 is (0.5, 0.5). Optionally, the filtering parameters are not limited to the filter kernel; the filtering parameters are different for different landscape angles and also different for different portrait angles. For example, in two portrait orientations, the filter kernel of electronic device 100 is (0.5, 0.5) when the display orientation is 0 degrees and 180 degrees, but one is the average of the current pixel and the pixel to its left, while the other is the average of the current pixel and the pixel to its right, resulting in different filtering results.

[0198] Here, the electronic device 100 changes the filtering parameters of the software filter based on the model of the electronic device and changes in the status of the electronic device (display screen) (such as switching between different displays, changing the display orientation of the display screen, etc.). This can solve the display effect of the display screen under different conditions and improve the practicality and flexibility of this application.

[0199] The following example uses an electronic device 100 to perform software filtering on a single-channel bitmap (each pixel in the bitmap includes grayscale information from one channel), with a filter kernel of (0.5, 0.5). An exemplary code snippet is shown below:

[0200]

[0201] Taking the display of the character "王" as an example, as Figure 10c shown, Figure 10c an exemplary schematic display effect of the bitmap data in the red channel or blue channel extracted before and after filtering is shown. Before filtering, there are green edges on the vertical strokes of the character "王"; after horizontal filtering with a filter having a filter kernel of (0.5, 0.5), the vertical strokes of the character "王" in the red channel and blue channel become wider because of the filtering in the horizontal direction, so that the red sub-pixels and blue sub-pixels in adjacent pixel points in the horizontal direction perform color compensation, thereby achieving the effect of eliminating the green edges in the vertical direction.

[0202] Similarly, if the bitmap is vertically filtered with a filter having a filter kernel of the horizontal strokes of the character "王" will become wider (thicker) because of the filtering in the vertical direction, so that the red sub-pixels and blue sub-pixels in adjacent pixel points in the vertical direction perform color compensation, thereby achieving the effect of eliminating the green edges in the horizontal direction.

[0203] Subsequently, the electronic device 100 sends the filtered content to the display. The filter kernel of the sub-pixel rendering algorithm in the display is After the secondary filtering and sampling process of the resampling filter of the sub-pixel rendering algorithm, the DDIC drives the display screen to light up the sub-pixels on the screen. It can be seen that the above horizontal filtering (0.5, 0.5) and the resampling filter are jointly combined into a virtual resampling filter That is, this method can enable the 1D SPR electronic device to achieve a display effect similar to that of the 2D SPR electronic device.

[0204] Step S104: The electronic device 100 superimposes the filtered bitmap.

[0205] After the electronic device 100 obtains the filtered bitmap, it pastes the bitmap at the corresponding position of the screen. The size of this screen is the same as the size of the display screen of the application, so that the bitmap can be displayed on the display screen of the electronic device in the size of the display screen of the display. Among them, the mixing and superimposing methods include CPU drawing and GPU drawing. Then, the electronic device 100 combines the application interfaces of multiple applications and interface elements such as the status bar and navigation bar into a display interface to be displayed.

[0206] Step S105: Based on the superimposed bitmap, the electronic device 100 lights up the light-emitting points on the display screen through the sub-pixel rendering algorithm to display the content to be displayed.

[0207] Electronic device 100 sends the superimposed bitmap to the display screen. The display screen controller (DDIC) of the display screen illuminates the light-emitting points (sub-pixels) on the display screen based on the superimposed bitmap using a sub-pixel rendering algorithm, thereby displaying the content to be displayed on the display screen of electronic device 100.

[0208] The following details the process by which the superimposed bitmap of the electronic device 100 pairs is processed using a sub-pixel rendering algorithm.

[0209] The superimposed bitmap includes grayscale information from the RGB three channels (red, blue, and green grayscale values ​​for each pixel). For the red and blue channels, the electronic device 100 needs to filter the input bitmap (the superimposed bitmap) to determine the pixel grayscale values ​​of the red and blue sub-pixels. Since there is only one red and one blue sub-pixel for every two pixels in the diamond arrangement of the OLED screen, the red and blue sub-pixels need to be used as compensation pixels for surrounding pixels, and their display brightness is related to their surrounding pixels. In step S103, the electronic device 100 performs a software filter on the red and blue channels. Here, based on the sub-pixel rendering algorithm, the electronic device 100 performs a second filter on the red and blue channels to determine the pixel grayscale values ​​of the red and blue sub-pixels. Therefore, in the red and blue channels, based on the filtered and sampled bitmap, the DDIC transforms the pixel grayscale values ​​of the filtered bitmap into voltage or current, driving the OLED screen to emit light from the red and blue light-emitting points on the OLED screen with the corresponding voltage or current. It should be noted that the filtering method here differs from the filtering method in step S103 above. This filtering method is determined by the sub-pixel rendering algorithm integrated into the DDIC in the electronic device 100 and is difficult to change through software updates.

[0210] For the green channel, the aforementioned resampling and filtering process is unnecessary. The DDIC can directly input the superimposed bitmap into the green channel, converting the pixel grayscale values ​​of the green sub-pixels in the superimposed bitmap into voltage or current forms to drive the display screen, thereby illuminating the green light-emitting points on the display screen with the corresponding voltage or current. The electronic device 100 displays the content to be displayed corresponding to the superimposed bitmap.

[0211] In this embodiment, the electronic device 100 performs pre-filtering (software filtering) on ​​the content to be displayed before it is sent to the display screen. This pre-filtering, combined with the resampling filter in the sub-pixel rendering algorithm, achieves the effect of changing the display effect. This embodiment solves the difficulty of the sub-pixel rendering algorithm not being able to be updated online.

[0212] The following uses the filter kernel of software filtering as an example. Taking the resampling filter kernel (0.5, 0.5) used in the subpixel rendering algorithm of DDIC as an example, when the subpixels on the display screen are arranged as follows: Figure 2b The sub-pixel arrangement shown in the diagram details the filtering effect achieved through the combination of software filtering and sub-pixel rendering algorithms. Specifically, software filtering... Together with the resampling filter (0.5, 0.5), they form a virtual resampling filter.

[0213] like Figure 11a As shown, after generating the bitmap of the content to be displayed, the electronic device 100 performs software filtering on the bitmap. The bitmap of the content to be displayed includes grayscale data of the RGB three channels. The electronic device 100 performs software filtering on the red and blue channels, and the filter kernel is... Determine the grayscale value of each pixel in the bitmap. Specifically, the grayscale value of the blue sub-pixel of the filtered pixel (n, m-1) is B(n, m-1) = 0.5b(n, m-2) + 0.5b(n, m-1); the grayscale value of the red sub-pixel of the filtered pixel (n, m) is R(n, m) = 0.5r(n, m-1) + 0.5r(n, m); and the grayscale value of the green sub-pixel is G(n, m) = g(n, m).

[0214] like Figure 11b As shown, the electronic device 100 sends the filtered bitmap to the display screen, and the display screen controller illuminates the light-emitting points (sub-pixels) on the display screen based on a sub-pixel rendering algorithm. The filter kernel of this sub-pixel rendering algorithm is (0.5, 0.5). Through this sub-pixel rendering algorithm, pixel (n-1, m) can share a blue sub-pixel with its neighboring pixel (n-2, m), and pixel (n, m) can share a red sub-pixel with its neighboring pixel (n-1, m). Green sub-pixels are one-to-one and do not need to be shared with other pixels. Figure 11b In this sub-pixel rendering algorithm, the grayscale value of the blue sub-pixel of pixel (n-1, m) is B1(n-1, m) = 0.5B(n-2, m) + 0.5B(n-1, m); the grayscale value of the red sub-pixel of pixel (n, m) is R1(n, m) = 0.5R(n-1, m) + 0.5R(n, m); and the grayscale value of the green sub-pixel is G(n, m) = g(n, m).

[0215] Among them, such as Figure 11c As can be seen from this, software filtering Together with the resampling filter (0.5, 0.5), they form a virtual resampling filter. This method enables 1D SPR electronic devices to achieve display effects similar to 2D SPR electronic devices, and solves the color fringing phenomenon that occurs when the sub-pixel rendering algorithm is a one-dimensional filter, without changing the sub-pixel rendering algorithm.

[0216] In some embodiments, the preprocessing software filtering algorithm (step S103) described above can occur at any stage of the rendering and display (sending to the display screen) process. For text to be displayed, the preprocessing software filtering algorithm can occur between any two steps of rasterization, blending overlay, layer overlay, and display. For images, UI graphics, or 3D graphics to be displayed, the preprocessing software filtering algorithm can occur between any two steps of image decoding, rasterization, blending overlay, layer overlay, and display.

[0217] In the above method flow, step S103 is integrated after the rasterization process (step S102) and before the blending and overlay process (step S104). If step S103 is executed after the overlay process (step S104) and before the display (step S105), after the electronic device 100 obtains the bitmap of the content to be displayed, it performs blending and overlay processes and then performs software filtering on the overlaid bitmap. The electronic device 100 then sends the filtered bitmap to the display screen, and uses a sub-pixel rendering algorithm to light up the light-emitting points on the display screen to display the content to be displayed. Here, before performing software filtering on the overlaid bitmap, the electronic device 100 needs to transform the overlaid bitmap into a linear domain, and then perform software filtering before transforming the filtered bitmap back into a non-linear domain.

[0218] In some embodiments, the electronic device 100 employs different processing methods depending on the nature of the content to be displayed (such as text, images, vector graphics). Optionally, the electronic device 100 performs step S103 only on text or characters. Since the edges of text strokes have higher contrast compared to other UI elements in the display interface, and issues such as colored edges and graininess are most noticeable at the edges of text strokes, we can process only the text portion of the UI interface, saving the computing resources of the electronic device 100 without significantly affecting the display effect.

[0219] In some embodiments, in step S101 above, the electronic device 100 acquires the content to be displayed and determines the display format of the content to be displayed. Based on the content to be displayed, the electronic device 100 queries whether a bitmap of the content to be displayed is stored in the electronic device 100. If the content to be displayed is text or characters, the electronic device 100 queries whether a bitmap of the content to be displayed in that display format is stored in the electronic device 100 based on the content to be displayed and the display format (font, size, etc. of the content to be displayed); if the content to be displayed is an image, the electronic device 100 queries whether a bitmap of the content to be displayed in that display format is stored in the electronic device 100 based on the content to be displayed and the display format (display size of the image, etc.).

[0220] If the bitmap is stored, the electronic device 100 calls the bitmap of the content to be displayed and directly executes step S104. Optionally, if the bitmap is not stored, the electronic device 100 executes steps S102 and S103. After rendering and filtering the content to be displayed, the electronic device generates a bitmap of the content to be displayed. Here, the electronic device 100 saves the bitmap of the content to be displayed for future use.

[0221] In this way, the electronic device 100 only needs to perform rendering and software filtering operations once for newly appearing text, characters or images, and can then reuse the software filtering results, which greatly reduces the amount of computation.

[0222] In some embodiments, before the electronic device 100 executes step S103, the electronic device 100 determines whether to execute step S103 based on its current state. When the current state of the electronic device 100 meets a preset condition, the electronic device 100 executes step S103.

[0223] The preset condition includes that the electronic device 100 is not currently in a shooting and sharing, screen mirroring, or similar scenario. For example, when the electronic device 100 receives a shooting and sharing operation, it captures an image and sends it to other electronic devices via an application. The image data sent by the electronic device 100 to other electronic devices is a bitmap. If the electronic device 100 performs a preset filtering operation on the captured image, the sent image data will be a bitmap that has been software-filtered. For example, if the preset software filter kernel is (0.5, 0.5), the image after this software filtering will be an image with a green border (e.g., ...). Figure 6a (As shown). Other electronic devices receive the image with the green border, affecting the display effect of the image on other electronic devices. Therefore, when electronic device 100 is not currently in a shooting and sharing scenario, electronic device 100 executes step S103.

[0224] Similarly, when electronic device 100 receives a screen mirroring activation operation, it sends the captured image to other electronic devices for display in real time. If electronic device 100 performs a preset filtering operation on the captured image, the sent image data will be a software-filtered bitmap. When other electronic devices receive this software-filtered bitmap, it affects the display effect of the bitmap on other electronic devices. Therefore, when electronic device 100 is not currently in a screen mirroring scenario, it executes step S103. Optionally, when electronic device 100 receives a screen mirroring deactivation operation, it resumes executing step S103.

[0225] In summary, the methods for improving the display effect of the display screen described in the above embodiments are applicable to situations where the display screen of the electronic device 100 is an OLED screen and the subpixels are arranged in a diamond pattern. There are various subpixel arrangements for OLED screens, not limited to a diamond arrangement. The screen display method provided in this application embodiment can also be applied to displays with other subpixel arrangements, improving the display effect of displays with different arrangements.

[0226] like Figure 12 As shown, Figure 12 Another subpixel arrangement for an OLED display is illustrated as an example. Figure 12 The arrangement shown includes two types of pixels: one type consists of a red sub-pixel and a blue sub-pixel, and the other consists of two green sub-pixels. These two types of pixels are arranged alternately in the horizontal and vertical directions. Different subpixel rendering algorithms can achieve different display effects with this arrangement. Below is a brief introduction to four subpixel rendering algorithms applicable to this arrangement.

[0227] like Figure 13 As shown, when a single white pixel is input (its RGB grayscale value is (255, 255, 255)), the sub-pixel rendering algorithm three illuminates five sub-pixels on the display device, including two red sub-pixels, two blue sub-pixels, and one green sub-pixel. The two red sub-pixels have the same brightness, and the two blue sub-pixels have the same brightness. The illumination method implemented by sub-pixel rendering algorithm three allows the human eye to perceive white, producing a high level of clarity, but with significant graininess and noticeable color fringing.

[0228] Using subpixel rendering algorithm four, eight subpixels are illuminated on the display device, including two red subpixels, two blue subpixels, and four green subpixels. The two red subpixels have the same brightness, the two blue subpixels have the same brightness, and the four green subpixels have different brightness levels. For example, the two green subpixels account for 37.5% of the display brightness, while the other two green subpixels account for 12.5%. The illumination method implemented by subpixel rendering algorithm four makes the white color perceptible to the human eye, but the actual effect is low sharpness and obvious color fringing.

[0229] Using subpixel rendering algorithm five, six subpixels are illuminated on the display device, including two red subpixels, two blue subpixels, and two green subpixels. The two red subpixels have the same brightness, the two blue subpixels have the same brightness, and the two green subpixels have the same brightness. The illumination method implemented by subpixel rendering algorithm five allows the human eye to perceive white, but the actual effect is low sharpness and obvious color fringing.

[0230] Using subpixel rendering algorithm six, ten subpixels are illuminated on the display device, including three red subpixels, three blue subpixels, and four green subpixels. The three red subpixels have the same brightness, the three blue subpixels have the same brightness, and the four green subpixels have varying brightness. For example, two of the green subpixels contribute 37.5% of the display brightness, while the other two contribute 12.5%. The illumination method implemented by subpixel rendering algorithm six allows the human eye to perceive white, but the actual effect is that the clarity is generally average, and color fringing is generally noticeable.

[0231] As can be seen, DDIC provides some ability to adjust the subpixel rendering algorithm, but the number and range of adjustable parameters are limited. All four subpixel rendering algorithms exhibit varying degrees of blurriness and noticeable color fringing, failing to achieve satisfactory results. Therefore, improving the display effect of the aforementioned screen cannot be achieved by changing the subpixel rendering algorithm.

[0232] This application provides a screen display method in which an electronic device 100 pre-filters the content to be displayed before it is sent to the display screen, and works in conjunction with a sub-pixel rendering algorithm to achieve a high-definition effect without color fringing, thus improving the display quality. This solves the problem of the sub-pixel rendering algorithm's inability to be updated online.

[0233] The pre-filtering process here refers to the process whereby the electronic device 100 obtains the content to be displayed, lays out and renders the content, and then performs software filtering on the bitmap of the content to be displayed.

[0234] When the bitmap of the content to be displayed includes grayscale data of the three RGB channels for each pixel (red grayscale value, blue grayscale value, and green grayscale value for each pixel), the electronic device 100 filters the green channel of the bitmap to determine the filtered pixel grayscale value in the green channel. At this time, the electronic device 100 acquires the filtered bitmap.

[0235] For example, the bitmap of the content to be displayed includes a third red pixel grayscale value, a third blue pixel grayscale value, and a third green pixel grayscale value for each pixel. The electronic device 100 filters the green channel of the bitmap to obtain a filtered bitmap, which includes a third red pixel grayscale value, a third blue pixel grayscale value, and a fourth green pixel grayscale value for each pixel.

[0236] When the bitmap of the content to be displayed includes grayscale value data for one channel of each pixel, and the size of the original bitmap is [w, h], the electronic device 100 allocates memory of size [w, h, 3] to store the filtered bitmap, which includes grayscale value data for the three RGB channels. Firstly, the electronic device 100 copies the original bitmap to two channels of the filtered bitmap, namely the red and blue channels. Since the above sub-pixel arrangement does not require adjustment of the red and blue sub-pixels to achieve the desired display effect, filtering is unnecessary for the red and blue channels, and the electronic device 100 can directly copy the original bitmap to the red and blue channels.

[0237] Secondly, the electronic device 100 performs software filtering on the original bitmap to determine the grayscale value of the green sub-pixels, and then copies the software-filtered grayscale bitmap to another channel, which is the green channel. At this point, the electronic device 100 obtains the filtered bitmap.

[0238] For example, the bitmap of the content to be displayed includes the third pixel grayscale value of each pixel, that is, the red pixel grayscale value, blue pixel grayscale value, and green pixel grayscale value of each pixel are all the third pixel grayscale value. First, the electronic device copies the grayscale bitmap to the red channel and the blue channel. Then, the electronic device 100 filters the grayscale bitmap to obtain the fourth pixel grayscale value. The electronic device 100 then copies the filtered grayscale bitmap to the green channel to obtain the filtered bitmap. The filtered bitmap includes the red pixel grayscale value (third pixel grayscale value), the blue pixel grayscale value (third pixel grayscale value), and the green pixel grayscale value (fourth pixel grayscale value) of each pixel.

[0239] For example, in the above software filtering method, the filter kernel can be described as (0.125, 0.75, 0.125). In sub-pixel rendering algorithm three, the brightness of a green sub-pixel is 100%. Through this filtering process, the brightness of a green sub-pixel can be distributed among three green sub-pixels, so that the brightnesses borne by the three green sub-pixels are 12.5%, 75%, and 12.5% respectively.

[0240] Subsequently, the electronic device 100 sends the filtered content to the display. After the filtering and sampling processes of the resampling filter of the display screen control chip (DDIC), the sub-pixels on the screen are lit.

[0241] Exemplarily, as Figure 14 shown, taking the character "E" as an example, the electronic device 100 queries the display data of the character "E" in the font file of the example font A in the example font A. This display data is stored in the form of a vector graph. Then, the electronic device 100 renders the vector graph of the character "E" to generate a bitmap. The bitmap is composed of multiple pixel points, and the bitmap includes the grayscale value data of the RGB three channels of each pixel point (the red grayscale values of each pixel point form a red vector matrix, the blue grayscale values form a blue vector matrix, and the green grayscale values form a green vector matrix). The electronic device 100 performs software filtering on the green channel in this bitmap, and the filter kernel of this software filtering can be (0.125, 0.75, 0.125).

[0242] Next, the electronic device 100 performs blending overlay and layer overlay on the filtered bitmap. Finally, the electronic device 100 sends the overlaid bitmap to the display screen. The display screen controller of the display screen performs secondary filtering based on the resampling filter in the sub-pixel rendering algorithm to determine the final grayscale value information of the RGB three channels. The electronic device 100 transforms the pixel grayscale values of this secondarily filtered bitmap into forms such as voltage or current, drives the OLED screen, and lights the light-emitting points (sub-pixel points) on the display screen with the corresponding voltage or current, and the character bitmap is displayed on the display screen.

[0243] It can be seen that the above software filtering (0.125, 0.75, 0.125) and the resampling filter in sub-pixel rendering algorithm three work together to achieve a better display effect than that achieved by sub-pixel rendering algorithm three.

[0244] It can be understood that the filtering parameters in the above software filtering method can be adjusted as needed. The parameters of the software filtering for sub-pixel rendering algorithm four are different from those of the software filtering for sub-pixel rendering algorithm three. The parameters of the above software filtering are determined based on the sub-pixel rendering algorithm of the electronic device 100 and the display effect to be achieved.

[0245] In some embodiments, the above-described preprocessing software filtering algorithm can occur at any stage of the image rendering and display (sending to the display screen) process.

[0246] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive), etc.

[0247] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This program can be stored in a computer-readable storage medium, and when executed, it can include the processes described in the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM or random access memory (RAM), magnetic disks, or optical disks.

Claims

1. A screen display method applied to an electronic device, the electronic device comprising an OLED display panel and a display controller integrating a subpixel rendering algorithm, characterized in that, The method includes: The electronic device acquires bitmap data of the content to be displayed; The electronic device performs software filtering on the bitmap data, wherein the software filtering is determined based on the sub-pixel rendering algorithm and is used to optimize the display edges of the content to be displayed on the OLED display panel; The display controller performs sub-pixel rendering on the bitmap data after software filtering to determine the RGB grayscale value of each pixel. The display controller drives the OLED light-emitting points on the OLED display panel to display the content to be displayed according to the RGB grayscale values; the electronic device performs software filtering on the bitmap data, including: The bitmap data includes RGB three-channel bitmap data and single-channel grayscale bitmap data; When the bitmap data is single-channel grayscale bitmap data, the bitmap data is converted into RGB three-channel bitmap data; The electronic device performs single-pixel channel software filtering on the red pixel grayscale value and the blue pixel grayscale value of the RGB three-channel bitmap data respectively; The electronic device maintains the same grayscale value for the green pixels in the bitmap data.

2. The method according to claim 1, characterized in that, The single-pixel channel software filtering process includes: The single-pixel channel software filtering process is perpendicular to the direction of the one-dimensional filtering process in the sub-pixel rendering algorithm.

3. The method according to claim 2, characterized in that, The formula for the one-dimensional filtering includes: Where dst(x,y) is the grayscale value of the output pixel (x,y), src(x,y) is the grayscale value of the input pixel (x,y), kernel is the convolution kernel, anchor is the anchor point, anchor.x is the x-coordinate of the anchor point, and anchor.x is the y-coordinate of the anchor point.

4. The method according to claim 1, characterized in that, Before the electronic device performs software filtering on the bitmap data, the method further includes: The electronic device determines the sub-pixel rendering algorithm based on the model of the display screen.

5. The method according to claim 1, characterized in that, The electronic device performs software filtering on the bitmap data, including: When it is confirmed that the electronic device is not in a shooting, sharing, or screen projection scenario, the electronic device performs software filtering on the bitmap data.

6. The method according to claim 1, characterized in that, The electronic device performs software filtering on the bitmap data of the content to be displayed, and then further includes: The electronic device stores the bitmap data of the content to be displayed after being filtered by the software.

7. The method according to claim 6, characterized in that, The method further includes: The electronic device calls the saved bitmap data of the content to be displayed after software filtering; The display controller performs sub-pixel rendering on the bitmap data after software filtering, determines the RGB grayscale value of each pixel, and drives the OLED light-emitting points on the OLED display panel to display the content to be displayed based on the RGB grayscale value.

8. The method according to claim 1, characterized in that, The electronic device acquires bitmap data of the content to be displayed, including: The electronic device determines the vector graphic of the content to be displayed; The electronic device rasterizes the vector image of the content to be displayed to obtain the bitmap data of the content to be displayed.

9. The method according to claim 1, characterized in that, The data types of the content to be displayed include text, characters, and images.

10. An electronic device, characterized in that, include: One or more processors, one or more memories, a display screen, and a display screen controller with integrated subpixel rendering algorithms; The one or more memories are respectively coupled to the one or more processors, the display screen, and the display screen controller; the one or more memories are used to store computer program code, the computer program code including computer instructions; when the computer instructions are executed on the processor, the electronic device performs: The processor acquires bitmap data of the content to be displayed. The processor performs software filtering on the bitmap data, wherein the software filtering is determined based on the sub-pixel rendering algorithm and is used to optimize the display edges of the content to be displayed on the OLED display panel; The display controller performs sub-pixel rendering on the bitmap data filtered by the software to determine the RGB grayscale value of each pixel. The display controller drives the OLED light-emitting points on the OLED display panel to display the content to be displayed according to the RGB grayscale values; the software filtering of the bitmap data by the processor includes: The bitmap data includes RGB three-channel bitmap data and single-channel grayscale bitmap data; When the bitmap data is single-channel grayscale bitmap data, the processor converts the bitmap data into RGB three-channel bitmap data. The processor performs single-pixel channel software filtering on the grayscale values ​​of the red and blue pixels of the RGB three-channel bitmap data, respectively; the grayscale value of the green pixels of the bitmap data remains unchanged.

11. The electronic device according to claim 10, characterized in that, The single-pixel channel software filtering process includes: The single-pixel channel software filtering process is perpendicular to the direction of the one-dimensional filtering process in the sub-pixel rendering algorithm.

12. The electronic device according to claim 11, characterized in that, The formula for the one-dimensional filtering includes: Where dst(x,y) is the grayscale value of the output pixel (x,y), src(x,y) is the grayscale value of the input pixel (x,y), kernel is the convolution kernel, anchor is the anchor point, anchor.x is the x-coordinate of the anchor point, and anchor.x is the y-coordinate of the anchor point.

13. The electronic device according to claim 10, characterized in that, Before the bitmap data is software filtered by the processor. The processor determines the sub-pixel rendering algorithm based on the model of the display screen.

14. The electronic device according to claim 10, characterized in that, The step of performing software filtering on the bitmap data by the processor includes: When it is confirmed that the electronic device is not in a shooting, sharing, or screen projection scenario, the processor performs software filtering on the bitmap data.

15. The electronic device according to claim 10, characterized in that, The processor performs software filtering on the bitmap data of the content to be displayed, and then the process further includes: The memory stores the bitmap data of the content to be displayed after being filtered by the software.

16. The electronic device according to claim 15, characterized in that, The electronic device also performs: The processor calls the saved, software-filtered bitmap data of the content to be displayed. The display controller performs sub-pixel rendering on the bitmap data after software filtering, determines the RGB grayscale value of each pixel, and drives the OLED light-emitting points on the OLED display panel to display the content to be displayed based on the RGB grayscale values.

17. The electronic device according to claim 10, characterized in that, The step of obtaining bitmap data of the content to be displayed through the processor includes: The processor determines the vector graphic of the content to be displayed; The processor rasterizes the vector image of the content to be displayed to obtain the bitmap data of the content to be displayed.

18. The electronic device according to claim 10, characterized in that, The data types of the content to be displayed include text, characters, and images.

19. A computer-readable medium for storing one or more programs, wherein the one or more programs are configured to be executed by the one or more processors, the one or more programs including instructions for performing the method as claimed in any one of claims 1-9.

Citation Information

Patent Citations

  • Display device and display driving method thereof

    CN108682374A

Cited By

  • Screen display method and related apparatus

    WO2022166624A1