Label Printer API Wrappers for Browser-Based Template Editing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing label printers with standalone printing functions are limited to using fixed, pre-defined template data, requiring a new application package for any modifications, which is inefficient and inflexible.
Innovation Solution
Implementing an application programming interface (API) with first and second wrapper APIs to enable interoperability between different programming languages, allowing data editing and function extension in both Qt modeling language (qml) and web application environments, such as Python, HTML, or JavaScript, without modifying the printer's firmware.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If fixed pre-defined template data is used in the installed application package, then the printer can execute standalone printing function, but the template data cannot be modified without installing another application package
Solution Approach 1:
The patent introduces a web browser-based editing dimension, allowing users to modify template data through a web interface rather than requiring firmware-level or application-package-level changes. This adds a new operational dimension (web access) that bypasses the limitation of fixed template data in installed applications.
Solution Approach 2:
The patent introduces a web server and web browser as intermediary components between the user and the printer's template data. Instead of directly modifying firmware or application packages, users interact with template data through the web interface, which mediates the editing process and allows flexible modification without reinstallation.
2Adaptability or versatility
If another application package is installed to modify template data, then the modified template data can be used, but the process becomes inefficient and time-consuming
Solution Approach 1:
The patent enables users to independently edit template data through the web interface without requiring technical expertise in application package installation or firmware modification. The system provides self-service capabilities where users can directly customize template data through the web browser, eliminating the time-consuming package installation process.
Solution Approach 2:
The patent allows template data to be prepared and edited in advance through the web interface before actual printing operations. Users can customize template data whenever needed without waiting for application package installations, enabling preliminary preparation of customized templates that can be immediately used.
3Adaptability or versatility
If multiple application packages are installed for different template data, then various printing functions can be achieved, but the device complexity and storage requirements increase
Solution Approach 1:
The patent makes the web server and web browser universal tools that can handle multiple template data editing tasks. Instead of requiring separate application packages for different printing functions, the web interface provides a universal platform for editing various template data, reducing the need for multiple specialized packages and their associated storage requirements.
Data Source
Figure 1~2
Figure 3
Figure 4
AI summary
Provided is a printer capable of easily extending functions. According to an embodiment, the printer includes an API, a first wrapper API, a second wrapper API, an installation unit, and an execution unit. The API interfaces functions of the printer. The first wrapper API and the second wrapper API convert a programming language of the API, and make one or more of the functions available in first and second programming language execution environments. The installation unit installs an application. The application is created using first and second programming languages, makes one or more of the functions available in the first and second programming language execution environments, and has a function for allowing data, which is to be used when one or more of the functions are used in the first programming language execution environment, to be edited in the second programming language execution environment. The execution unit executes the application.