The MarkStein Web-Editor module is used for server-based structured editing of texts in print and web environments. In contrast to the usual web editors, the texts are displayed here in real view (WYSIWYG) with their formatting (special characters, font, font size, color). The editor is therefore particularly suitable for text creation for printed pages and sophisticated web pages that can be compiled by inexperienced users using components. Together with MarkStein Web-Layout, the module can be used in browser-based applications as a fronted for the MarkStein Publishing Server. The layout templates can be created with MarkStein Publisher and Adobe InDesign.

Areas of application include Web2Print solutions, catalogue production and editorial systems.

Text Structure

Successive paragraphs can optionally be combined to sections.
Successive sections can be nested as deep as desired into higher-level sections.
Paragraphs are tagged using paragraph formats.
Within paragraphs, text blocks can be tagged using text formats subordinate to the paragraph formats.
Marks such as hyperlinks or notes can be embedded.

Technology

In a print layout environment, a layout is assigned to the texts. On the basis of this layout, the text size as well as the overlay and saucer are determined line by line. A preview in JPEG or PDF format is available for checking the layout. On the client side, the MarkStein Web Editor is completely programmed in JavaScript. On the server side, the application has a PHP function interface for loading and saving texts, for generating preview data and for determining the size of the text. A connection to the MarkStein SOAP server via this interface has already been implemented.

User Interface

The appearance of the editor corresponds to that of a modern app. Therefore, the module can also run on tablets with touch screens. On the left side there is the format field with the format names, followed by the input field with real representation of the fonts. On the right side a preview of the page can be shown. The upper menu bar contains the function calls for opening and closing files, inserting special characters, PDF output and publishing the article on the web.

Technical Information

The user interface and text editing are implemented in JavaScript on the client side. For the procurement of text, formatting and preview data as well as for the storage of text data, an interface is available on the server side. The interface can be implemented with common web technologies such as REST API or SOAP. A realization with the MarkStein SOAP server is outlined below.

Functions of Interface

Load text
Save text
Load format groups / layout templates
Preview, PDF, deliver line count

SOAP Server

The (optional) SOAP server can be used if the designed system is to work with the data structure of the MarkStein systems (MarkStein XML Scheme). For larger applications, a correspondent database (Oracle 12c) is also integrated. The naming of the data structure is freely selectable by the customer.

Hierarchical Data Structure

Client
Workgroup
Publication
Project | Data elements
Department | Data elements
Rubric | Data elements
Topic | Data elements
Data elements

Technologies

Browser-Client: JavaScript, AngularJS, AJAX
Web-Server: Apache, PHP
MarkStein SOAP-Server: C++ mit gSOAP

Data formats

Text / Templates: JsonML auf der Basis von MarkStein XML

Preview-Images: PDF, JPEG

System Requirements

SOAP-Server (optional)

Server with current processor and at least 4 cores or corresponding virtual server
Microsoft Windows-Server 2008 R2 (64-bit) or Windows-Server 2012 (R2)
8 GB RAM, mimum 2 GB RAM per additional instance
TrueColor graphics card

Web-Server

Server with current processor and at least 4 cores or corresponding virtual server
Latest Ubuntu Linux Server with Apache and PHP
8 GB RAM
20 GB free disk space for software und data

Supported Browsers

Firefox 45 or higher with Windows 7, 8.1, 10 or Mac OS X 10.12 or higher
Chrome 50 or higher with Windows 7, 8.1, 10 or Mac OS X 10.12 or higher
Safari 9 or higher with Mac OS X 10.12 or higher