Electronic charting printing method based on QT framework
By adopting an electronic chart plotting and printing method based on the QT framework, combined with Rtree indexing and SVG vector format, the problems of low data retrieval efficiency and display distortion in electronic chart systems are solved, achieving high efficiency, compatibility, and seamless interactivity, thus improving the user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- TIANJIN UNIV
- Filing Date
- 2026-04-02
- Publication Date
- 2026-06-26
AI Technical Summary
Existing electronic nautical chart systems suffer from problems such as low data retrieval efficiency, display distortion, information redundancy and missing information, poor format compatibility, and poor user interactivity. In particular, the calculation delay is significant when dynamically rendering the entire chart or querying selected areas, which affects the user experience.
It adopts a mapping and printing method based on the QT framework, combined with Rtree indexing technology and SVG vector format, to realize print area selection and dynamic data filtering, intelligent drawing and display management of nautical chart elements, interactive preview and cross-format output, support full-map printing and box selection printing, and improve data retrieval efficiency and display quality through multi-threaded rendering and asynchronous rendering technology.
It achieves high-quality nautical chart display, accurate and optimized information, high efficiency and seamless interactivity, improves user experience, ensures clear and lossless display when zoomed in or out, and supports stable printing with consistent format across multiple systems and devices.
Smart Images

Figure CN122284933A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of electronic nautical chart systems, and in particular to an electronic nautical chart plotting and printing method based on the QT framework. Background Technology
[0002] Electronic Chart System (ECS) is a ship navigation aid system that can display nautical charts and navigation information. It can manage and display a large number of electronic navigation charts and annotation information, realize the automation and customization of navigation operations, and at the same time monitor and alarm the ship's navigation status in real time, thereby improving navigation safety. It has gradually become the core of the Integrated Bridge System (IBS). Mapping printing refers to printing electronic nautical chart information in a map format using preset printing modes, content, and page layouts. It can be used for nautical chart operations such as geographic attribute marking and route design, and is an important component of ECS. Current electronic nautical chart systems need to manage massive amounts of spatial data. Traditional indexing methods rely on linear traversal queries, requiring the traversal of all data entries, resulting in low data retrieval efficiency. This is especially true when dynamically rendering the entire chart or querying selected areas, where redundant traversal significantly increases computational latency and impacts user experience. Furthermore, the printing function of current electronic nautical charts suffers from display distortion, information redundancy and missing information, poor format compatibility, and poor user interactivity. Summary of the Invention The purpose of this invention is to address the current shortcomings of low index data efficiency, display distortion, information redundancy and missing information, poor format compatibility, and poor user interactivity by proposing a mapping and printing method based on the QT framework. This method comprises three parts: print area selection and dynamic data filtering, intelligent drawing and display management of chart elements, and interactive preview and cross-format output. The print area selection allows users to print any target area within the chart interface. Data filtering utilizes R-tree indexing technology to quickly index data within the query range of the target area, displaying preview content with low latency. The intelligent drawing and display management section is used to draw the chart and map elements of the selected area, while also allowing users to fill in production information, select font styles, and control display / hide operations. The interactive preview and cross-format output section provides interactive preview functions for chart content and mapping and printing output. It allows users to adjust the size of the preview content, zoom in and out, and set display settings. It also supports printing the preview content, saving it as a PDF schematic, and saving it as a PDF printable image, providing strong interactivity. The technical solution is as follows: A method for electronic nautical chart production and printing based on the QT framework: (1) Print area selection and dynamic data filtering The print area selection method is divided into full-map printing and box selection printing, which allows users to print any specified area in the nautical chart interface. Full-map printing uses the view window as the query range, while box selection printing uses a custom area generated by dragging and dropping with the mouse as the query range. It uses Rtree indexing technology to quickly filter target geographic elements (such as markers, routes, and irregular areas) and dynamically calculates parameters such as scale and latitude and longitude range to ensure that the preview content accurately matches the user's needs. (2) Intelligent drawing and display management of nautical chart elements The drawing and display management section is used to draw nautical charts and map elements for the selected area. It uses SVG vector format to eliminate display distortion and supports high-resolution output. The drawing of nautical chart elements includes drawing latitude and longitude scales, north arrows, legends, scale bars, and nautical chart images. It also allows users to fill in production information, select font styles, and control the display and hiding status of production information, legends, scale bars, and north arrows through QT controls. (3) Interactive preview and cross-format output The interactive preview and cross-format output section provides real-time preview and cartographic printing output functions. The preview function allows users to adjust the preview content to fit width, fit page, shrink, enlarge, landscape, single-page display, image enlargement and reduction, and display settings. The display settings dynamically filter the retrieved geographic features through QT controls and update the preview content in real time. The cartographic printing output function supports users to select printing with one click, save as a PDF print map (vector format, supports unlimited scaling), or save as a PDF schematic (pixel format, quick sharing). Combined with QT asynchronous rendering and Rtree data loading technology, it ensures low operation response time and high interactivity. The beneficial effects of this invention are: (1) High-quality display: Electronic nautical charts are drawn based on QT multi-threaded rendering and SVG vector format, eliminating graphic distortion, supporting high-resolution preview and PDF output, and ensuring clear and lossless display when zoomed in or out; (2) Precise information optimization: Target geographic elements are quickly filtered through Rtree index, avoiding traversing redundant data. Users can preview and set display settings in real time, delete redundant information, supplement missing information, and achieve customized printing; (3) High efficiency and compatibility: Rtree index improves data retrieval efficiency. Combined with QT's cross-platform features and PDF format output, it ensures consistent format and stable printing across multiple systems and devices; (4) Seamless interaction and convenient operation: Supports self-selection of printing area, creation of information display settings, display settings, real-time preview and one-click output (vector / pixel PDF). The operation process is simple and improves user experience. Attached Figure Description Figure 1 This is a flowchart of the printing operation of the present invention; Figure 2It is an R-tree data structure diagram; Figure 3 This is a diagram of the data structure stored in the leaf nodes of an Rtree; Figure 4 This is a diagram of the search process based on the R-tree data structure; Figure 5 This is a flowchart of the printing parameter update process of the present invention; Figure 6 This is a flowchart of the latitude and longitude scale drawing process of the present invention; Figure 7 This is a flowchart of the scale drawing process of the present invention; Detailed Implementation To make the technical solution of the present invention clearer, the present invention will be further described below with reference to the accompanying drawings. The present invention is implemented in specific steps: The printing operation process of this invention is as follows: Figure 1 As shown, first select either full-map printing or selection printing on the chart interface. Clicking full-map printing will directly bring up the print display settings window. Clicking selection printing allows you to drag and select the printing area on the chart interface to bring up the print display settings window. In the print display settings window, you can manage the print display settings, including filling in the title, producing unit, and producer information, setting whether the title, producing unit, producer, date, legend, and scale are displayed, and the font style. After setting the print display, a print preview window will pop up, allowing you to view the preview effect. You can use the window tools in the print preview window to modify the print preview effect. Finally, you can use the window tools in the print preview window to click print, save as a PDF print map, or save as a PDF schematic diagram as needed. The following are the specific implementation steps of the present invention: (1) Rtree index construction and data retrieval (1.1) Rtree index construction process In the Rtree index construction process, the electronic nautical chart spatial data (point, line, and polygon features) is first preprocessed and leaf nodes are generated: point features are grouped by the K-means spatial clustering algorithm to group adjacent marked points (such as buoys and lighthouses), and each group of points is encapsulated as a minimum bounding rectangle (MBB) as a leaf node of the Rtree to reduce redundant index entries; line features use the minimum MBB of each route or channel (covering the start, end, and all inflection points of the line segment) as an independent leaf node to ensure the complete spatial representation of the line features; polygon features use the minimum MBB (a rectangle that completely encloses the boundary of the area) of irregular areas (such as no-navigation zones and port areas) as leaf nodes to preserve their spatial extent characteristics. Then, a hierarchical index is constructed: spatially adjacent leaf nodes (adjacent MBBs) are aggregated upwards to form parent nodes. The MBBs of the parent node must completely cover the range of all child nodes, and a balanced tree is formed by recursive aggregation until the root node. The construction process of Rtree is as follows: Figure 2 As shown, the leaf nodes are accessed via std::vector <std::pair<MBB, Data> >Storing space object data, MBB uses latitude and longitude extreme values as parameters to represent the rectangular range. Data, as the top-level container for geographic elements, employs a layered design to achieve efficient data management, specifically including the following: Geometric Record (ShapeRecord): Associated with an IMyShapeRecord object, it stores the geometric information and symbolic control parameters of the features. Its hierarchical structure is as follows: Geometry Type: The OGRGeometryType enumeration value identifies the feature type (point, line, polygon), providing a classification basis for spatial calculations. For example: point buoy (OGR_POINT), linear channel (OGR_LINESTRING), and polygonal no-navigation zone (OGR_POLYGON). Coordinate Sequence: using std::vector <ogrpoint>It stores an ordered set of coordinate points to accurately describe the spatial form of geometric objects. Line and surface features define their connection relationships through a sequence of point points (such as the sequence of inflection points in a waterway). Symbolology Control: SymbolologyCode: A unique identifier for a symbol based on the IHO S-52 standard mapping (such as SYMBOL123), which is used to associate rendering resources (SVG paths, fill rules) in the database. Display Priority: Integer values define the rendering order of features when layers are overlaid (e.g., bridge symbols are displayed before river symbols) to avoid visual conflicts. PropertyRecord: Associated with an IMyProperty object, it stores descriptive attributes of features, specifically including: Field Metadata: Defines the metadata of attribute fields through IMyDBFFieldHeader, including name (e.g., "water depth"), data type (integer, floating-point, string), length limit, etc., to ensure the standardization of attribute parsing. Attribute key-value pairs: using std::map<std::string, Variant> The actual attribute values are stored in a format (such as "water depth = 12.5 meters" "material = concrete"), and dynamic access is supported and linked with symbolic logic (such as switching symbol styles based on water depth values). Feature ID: A unique string identifier that is bound to the database primary key and used to retrieve detailed resources of geographic features (such as multilingual tags and dynamic update logs), thereby decoupling data from business logic. Non-leaf nodes are accessed via std::vector <std::pair<MBB, ChildNodePointer> Organizing data, the MBB of a non-leaf node represents the smallest bounding rectangle of the geographic area covered by its child nodes. The purpose of child node pointers is to point to the next level of nodes. This layer-by-layer filtering narrows the query scope, avoiding a full traversal. The bottom leaf nodes (R12-R30) contain the original data coordinate information. R12, R18, R19, R21, R25, and R26 are the depth range (surface), R13 is the magnetic difference (point), R14, R16, R17, R20, R22, R23, R24, R27, R29, and R30 are obstacles (surface), and R5 is a reef or submerged reef (point). The upper-level nodes (R4-R11) are aggregated layer by layer to the node (R1-R3), and finally aggregated into the root node (R0) covering the entire map space. As the amount of node data increases, the R tree expands its hierarchical structure through node splitting and reorganization, thereby ensuring that the index structure efficiently adapts to the spatial distribution characteristics of electronic nautical chart data. (1.2) Data retrieval process When printing the entire image, the viewport rectangle is used as the search range. When printing by selecting a specific area, the rectangular area selected by dragging the mouse is used as the search range. During the retrieval process, the IMyShapeRecord object in memory is accessed directly via a pointer. When the query hits a leaf node: Quickly filter candidate features using MBB: Use the scope of MBB to quickly filter out irrelevant geographic features. Perform precise spatial relationship calculations by parsing the geometric coordinates in IMyShapeRecord: Calculate the spatial relationships of candidate elements to ensure the accuracy of query results. Combine the attribute fields in IMyProperty to achieve mixed queries: support complex query conditions, such as "water depth > 10m and type = reef". The query process is as follows Figure 4 As shown, based on the query range (red rectangular area), the system traverses the R-tree, retrieving only subtree nodes that overlap with the query range. The query process progressively traverses the tree levels downwards until it reaches the leaf nodes. At the leaf node level, the system checks whether the MBB of each leaf node overlaps with the query range and returns the overlapping geographic features (R17, R21, R22, R23). (2) Dynamic calculation of printing parameters Full print prints the entire view, while select-to-print prints only the selected area. For example... Figure 5 As shown, the print preview needs to update the print parameters when different print methods are selected. The print parameters in the print preview window are updated according to the print area selected by the user. The print parameters refer to the width of the printed image, the height of the printed image, the screen coordinates of the nautical chart, the latitude and longitude coordinates, the projected coordinates, the number of left loops, the number of right loops, and the scale. If the printing method is selection printing, the screen coordinates of the four corner points of the selected area are read. Following the geographic coordinate system used by the electronic nautical chart system, the screen coordinates are converted to latitude and longitude coordinates, and then to projected coordinates. The width and height in the print parameters are updated to match the width and height of the selected area. The screen coordinates, latitude and longitude coordinates, and projected coordinates in the print parameters are updated to match the screen coordinates of the four corner points of the selected area and the converted latitude and longitude coordinates and projected coordinates. The new scale is calculated by comparing the aspect ratio of the selected area with the aspect ratio of the view. Based on the latitude and longitude coordinates of the four corners (top left, bottom left, top right, bottom right), the maximum x-coordinate is assigned to the maximum x-coordinate of the latitude and longitude coordinates in the print parameters, and the minimum x-coordinate is assigned to the minimum x-coordinate of the latitude and longitude coordinates in the print parameters. Then, the left loop count for the corresponding longitude is calculated based on the minimum x-coordinate of the latitude and longitude coordinates, and the right loop count for the corresponding longitude is calculated based on the maximum x-coordinate of the latitude and longitude coordinates. The print content is then drawn based on the updated print parameters to generate a print preview. If the printing method is full-map printing, the parameter information of the current chart window is read to update the printing parameters; (3) Drawing of nautical chart elements The chart elements in the preview window are drawn using vector graphics. The drawing of chart elements includes latitude and longitude scales, a compass rose, legend, scale bar, and chart imagery. The text labels for chart elements require setting the font, size, color, and alignment. Latitude and longitude markings are placed around the image. The drawing precision and display method of the latitude and longitude markings can be adjusted according to the printed area and the scale of the current view; for example... Figure 6 As shown, the latitude and longitude scale drawing can adjust the drawing precision and display method of the latitude and longitude scale according to the printing method (selection printing or full-map printing) and the scale of the current view. For selection printing, the drawing range of the latitude and longitude scale is determined based on the area selected by the user. For full-map printing, the drawing range of the latitude and longitude scale is determined based on the complete range of the current view. The difference between longitude and latitude within the drawing range is calculated to determine the interval and precision of the scale. Based on the scale of the current view and the difference between latitude and longitude, an appropriate scale interval is selected to ensure that the scale is clearly readable in the print preview. Latitude and longitude scale lines are drawn according to the selected scale interval, and the corresponding latitude and longitude values are marked on the scale lines. For small-scale views, dense scale lines are drawn; for large-scale views, sparse scale lines are drawn. The main body of the compass is drawn as an arrow pointing north. Next to the compass symbol is the label "N," indicating the direction of the compass. The compass is drawn based on the coordinates of the upper right corner of the map's drawing area. The legend includes two categories: ocean and land. Each category consists of a rectangle and a corresponding text label to its right. The rectangle is filled in blue to represent ocean and gray to represent land. The scale drawing function can dynamically display the scale bar and its labels in the print preview, presenting the map's proportional relationships. The scale drawing process is as follows: Figure 7 As shown, the process begins by reading the screen width and geographical extent of the printing area, and calculating the actual distance represented by 1 centimeter on the screen to obtain the proportional relationship. Based on the calculated scale value, the closest scale level is selected from a preset scale level table to determine the drawing length and annotation values of the scale. During the drawing process, appropriate colors and font styles are selected according to the current display mode (daytime mode, nighttime mode, or dusk mode). The units and scale lines of the scale are drawn, including major and minor scales, and annotation text is drawn above or below the scale lines. The spacing and content of the annotation text are adjusted according to the scale level to optimize the display effect. The nautical charts are drawn using vector graphics. The data retrieval process leverages an R-tree index for efficient spatial queries. The drawn content includes world base maps, chart markers, plotting, and measurement data. World base map drawing uses parameters from the printed area's background color to create ocean and land background colors (daytime, nighttime, dusk). It then calculates the screen coordinates of the four corner points based on the number of left and right loops in the printed parameters, and draws a polygon with the ocean background color based on these corner points. Chart marker drawing, based on updated printed parameters, uses an R-tree index to quickly retrieve geographic features (such as markers, shipping routes, and irregular areas) within the target area. After retrieval, the nautical chart content is rendered using multi-threading. (4) Print display settings The production information drawing feature dynamically displays information such as title, production unit, producer, and production date in the print preview. This method achieves this through the following steps: Dynamically displaying production information based on user-defined visibility options: the display of the legend and scale bar is controlled by checking the corresponding text labels. The legend and scale bar allow users to select text font styles; a pop-up print display settings window allows for managing print display settings, filling in the title, production unit, and producer information, and setting whether the title, production unit, producer, date, legend, and scale bar are displayed and their font styles. (5) Preview window management The preview window management function allows users to manage the print preview window using window tools. The window toolbar includes controls such as Fit Width, Fit Page, Zoom Out, Zoom In, Landscape, Single Page Display, Print, Save as PDF Illustration, Save as PDF Printable Image, Image Zoom In, and Image Zoom Out. The display settings module uses QT controls to build the interactive interface, which is a floating control panel that can be collapsed to the side of the preview window. (5.1) In the window tools, the functions of adapt to width, adapt to page, shrink, zoom in, landscape, single page display, and print are all functions of QPrintPreviewWidget. The image zoom in and image zoom out functions allow users to zoom in and out of the images in the preview window. The image zoom in will enlarge the image based on its original size, and each time it is zoomed in, the width and height are multiplied by 2. The image zoom out will shrink the image based on its original size, and each time it is zoomed out, the width and height are multiplied by 0.5. (5.2) The display settings module includes a display mode switching module and a display filtering control unit. The display mode switching module uses a mutually exclusive group of radio buttons to achieve three-state switching control of basic display mode (core objects only), all display mode (all objects), and custom display mode (all objects). When the system detects that the user has selected the basic display mode, it automatically activates the reference display set of point objects, line objects, and area objects and disables the user interaction interface of display filtering function and object search function. When switching to all display mode, the system will display all objects while keeping the filtering and search functions disabled. When the custom display mode is selected, the functional restrictions on the display filtering unit and object search unit are lifted, allowing the user to perform multi-dimensional display control. The object display system employs a hierarchical tree structure for organization and management. The top-level classification nodes include four main categories: point objects, multi-point objects, line objects, and area objects. Their selection status is reflected by three-state checkboxes. Each category node contains specific object instances (e.g., point objects include light beacons and depth points; line objects include isobaths and railways; area objects include runways and no-navigation zones; and multi-point objects include clusters of depth measurement points). Each object instance has an independent checkbox, and the selection and display states are dynamically bound using Qt's QCheckBox component and semaphore slots. In custom display mode, users can configure the display state themselves via checkboxes. In custom display mode, the system provides a group of interactive control components: 1) The inverse selection module performs a Boolean inversion operation on the selected state by traversing the object tree nodes; 2) The configuration management module supports serializing the current selected state into a configuration file and storing it locally, and also has the function of loading historical configurations to restore the display state; 3) The global control module integrates "Show All" and "Close All" buttons. The former achieves panoramic display by recursively selecting all object checkboxes, while the latter performs a full selection cancellation operation to clear the displayed content. All of the above functional components are implemented using Qt's QPushButton and QAction controls, and are only activated and available in custom display mode. The object search unit is built based on a Trie tree keyword matching algorithm and includes a QLineEdit text input box and "Previous" / "Next" navigation buttons. When the user enters a fragment of an object name, the system traverses the object database in real time to generate a candidate list and highlights the matching item in the preview window. Search results are associated with corresponding object checkboxes, and users can directly modify their checked state to achieve dynamic display control. The state machine of this search function is linked to the display mode switching module, and interactive response is only enabled in custom display mode. When the user enters text, the system generates a candidate list in real time and highlights the matching item using QGraphicsScene. Search results are associated with corresponding object checkboxes, and users can directly modify their checked state to dynamically adjust the displayed content. The search function is linked to the display mode switching module via QObject and is only enabled in custom mode. (5.3) The print output function supports users to print drawings. Users can choose to print or save as a PDF. Figure 3 There are several print output options. After clicking "Print," you can select a printer to print. You can also save as a PDF image. The "Save as PDF" option allows users to choose the save path and save the printed content as a .pdf file. After saving, a "Save Complete" dialog box will appear. Different image processing techniques are used when rendering PDFs. In PDF schematics, the chart image is drawn using pixel-based methods. This pixel-based nature causes the image to become blurry when enlarged due to its fixed resolution. In contrast, the chart in a PDF printout uses a vector drawing method in SVG format, thus maintaining clarity at any magnification without blurring. Furthermore, in both PDF schematics and printouts, other chart elements (latitude and longitude scales, north arrow, title and production information, legend, and scale bar) are drawn using vector graphics. These elements are generated through vector graphics, offering the characteristic of distortion-free scaling.< / ogrpoint>
Claims
1. A method for electronic nautical chart production and printing based on the QT framework, characterized in that, The steps include: (1) Providing a print area selection function, supporting the selection of print area by printing the entire drawing or selecting a box for printing; The box selection printing generates a custom area as the query range by dragging and dropping with the mouse, and uses Rtree indexing technology to quickly filter the geographic elements in the target area; (2) The nautical chart interface content and nautical chart elements of the selected area are vector-drawn in the preview window. The nautical chart elements include latitude and longitude scales, north arrow, legend, scale bar and nautical chart image; among them, the drawing of latitude and longitude scales dynamically adjusts the accuracy and display mode according to the printing area and the scale bar of the current view. The drawing of scale bar determines the label value by calculating the ratio between screen distance and actual geographic distance; (3) Provide print display settings function, support users to input and configure production information (including title, production unit, producer, date), and dynamically control the display and hiding status of legend, scale bar and north arrow through QT control, while supporting custom configuration of font style; (4) Provide interactive preview window management function, support the operation of adapting the preview content to width, adapting to page, shrinking, enlarging, horizontal, single page display, image enlargement, image shrinking, as well as one-click selection to print, save as PDF print map or save as PDF schematic diagram; (5) Based on the printing method selected by the user, the printing parameters are dynamically updated to generate real-time preview content. The real-time preview content is updated and displayed in real time according to the printing method selected by the user. The printing parameters include the width, height, screen coordinates, latitude and longitude coordinates, projection coordinates, number of left loops, number of right loops, and adjustment value of the scale bar.
2. The printing method according to claim 1, characterized in that: In the selected area printing, the screen coordinates of the four corner points of the selected area are converted into latitude and longitude coordinates and projected coordinates, and the scale is calculated based on the aspect ratio of the selected area and the aspect ratio of the view; full-view printing directly reads the screen coordinates, latitude and longitude coordinates and projected coordinates of the current view as printing parameters.
3. The printing method according to claim 1, characterized in that: The nautical chart image is drawn using SVG vector format, eliminating display distortion and supporting high-resolution output; the drawing range of the latitude and longitude scale is determined according to the printing method, full-map printing is generated based on the complete view range, and box-selection printing is generated based on the user-selected area.
4. The printing method according to claim 1, characterized in that: The scale drawing supports switching colors and font styles according to the display mode, and calculates the actual scale relationship based on the screen width and geographical range, and selects the matching level from the preset scale level table to determine the drawing length.
5. The printing method according to claim 1, characterized in that: The nautical chart images in the PDF printouts are in SVG vector format, supporting infinite scaling while maintaining image clarity and no distortion; the nautical chart images in the PDF schematics are in pixel image format, with a fixed resolution when zoomed in.
6. The printing method according to claim 1, characterized in that: The construction process of the R-tree index technology includes the following steps: (a) For point features, adjacent labeled points are grouped using the K-means spatial clustering algorithm, and each group of points is encapsulated into a minimum bounding rectangle (MBB), which serves as a leaf node of the R-tree. (b) For line features, the minimum MBB of each route or channel covers the start point, end point, and all inflection points of the line segment, serving as an independent leaf node. (c) For face features, the minimum MBB of the irregular area completely encloses its boundary, serving as a leaf node. (d) Spatially adjacent leaf nodes are aggregated upwards to form a parent node, and the minimum bounding rectangle (MBB) of the parent node completely covers the MBB range of all child nodes. This recursive aggregation forms a hierarchical index structure, enabling fast spatial queries.
7. An electronic nautical chart drawing and printing system based on the QT framework, characterized in that, include: The print area selection module supports the selection of areas for full-map printing or box-selection printing, and dynamically filters target geographic features through Rtree indexing technology; The chart element drawing module is used to vector draw the chart interface content and chart elements of the selected area in the preview window, and dynamically adjust the display accuracy of the latitude and longitude scale and scale. The print display settings module is used to manage the input and display control of titles, production units, producers, and dates, and to configure font styles and element visibility through QT controls; The preview window management module provides interactive operation tools, supporting operations such as adapting the preview content to width, adapting to the page, scaling, landscape display, and single-page display, as well as one-click output of vector PDF printouts or pixel PDF illustrations; The print parameter update module is used to dynamically calculate screen coordinates, latitude and longitude coordinates, projected coordinates, and scale parameters based on the full map or selected map printing method, and generate real-time preview content.
8. The system according to claim 7, characterized in that: The box-selection printing module generates a custom area by dragging and dropping with the mouse, and updates the printing parameters based on the screen coordinates and geographic coordinates of the area; the full-map printing module directly reads the coordinate parameters of the current view window.
9. The system according to claim 7, characterized in that: The nautical chart feature drawing module supports SVG vector format output and quickly retrieves geographic features within the target area based on the Rtree index, achieving low-latency drawing through multi-threaded rendering technology.
10. The system according to claim 7, characterized in that: The preview window management module integrates a display mode switching function, supports basic display mode, all display mode and custom display mode, and searches for object names in real time through a Trie tree keyword matching algorithm, and dynamically adjusts the displayed content according to user input.