Free layout calendar is a plugin for creating calendars, different kinds of diaries and other similar products. Its work is based on the use of templates - single-page or multi-page CorelDraw files. The plugin allows to assign to the various objects of the template the type of data that will be substituted into it. It can be dates, names of months, days of the week, and more complex data — signs of the zodiac, whole formed blocks of months (from the Month builder projects).
The plugin automates the work of creating technically complex layouts, without limiting the designer's creative approach. The plugin does not change the used fonts or any attributes of shapes, only substitutes the necessary values in the right places of the template. A large selection of variable data opens up ample opportunities for professional application of the plugin, ensuring a stable result and minimizing the probability of errors.
The plugin works on the basis of projects containing all the settings of the current calendar. At the top of the window is a project manager control, which allows you to create and load previously created projects from the list. Changes made to the project can be saved by clicking the button.
A click on opens additional commands:
In the plugin settings that are opened when clicking the button with the gear in the lower right corner of the window, you can specify the settings for saving and using projects in the Projects.
The work with projects in the plugin is organized in the same way as in other ReproScripts plugins, except for the support of master projects. All projects of this plugin are individual and you can borrow little from one to another. Therefore, it is not possible to work with the master project, and always a new one starts with default values.
A more detailed description of the use of projects can be found on this page.
Having created a new project, you need to set aCorelDraw file as a template for it. This file will be used to substitute data and form a calendar. The template can be any single-page or multi-page document.
At the moment of generation of the calendar based on the template, the plugin successively goes through all the necessary variable fields in the project and on the basis of the calculated date determines, first, a suitable page of the template to be taken and all the values that must be substituted into its objects.
It is important to understand that at each step of the work the plugin uses only one page from the template, even if there are several of them in it. For each page you can specify a condition when it is to be used.
It might look strange, but the plugin does not have a command to add a page into the project. This operation is superfluous, since the page gets into the list together with the variable shape to which the data insertion will be performed.
Having selected an object (text or vector shape) in the template, you can see the button in the header of the list of objects. Clicking on it and setting the necessary parameters (they are described in detail below) can add to the list both the object itself and the page on which it is located (if it is not already listed).
Thus, the list of objects in the Template tab has a hierarchical structure - it contains a list of pages of the template and a list of shapes that are processed.
When the page is added, it will be used at each step of the calendar generation. If this is not overruled the plugin will always take the first page from the list, since it always fits the selection criterion.
In order to configure the need to apply one page of the template in one case, and a different one in another, you must click on the button in the line with the page name.
For each page, you can optionally specify the name, reflecting its purpose and conditions, when it should be used. On each step of its work the plugin checks whether the page meets the provided conditions and decides whether to use the page or not.
As conditions, you can specify to use the page:
An additional condition may be whether to check the suitability of the page at each step or in a specified number of steps (skipping checks on some steps).
For example, for a diary, you can set rules so that the first page is used for the left side of the spread (use always, step 2), and the second one is used for the right side of the spread (use always, step 1). The page with step 2 will be used on every second iteration and on the remaining steps the page with an increments of 1 will be taken.
The plugin at each step scans the entire list of pages from top to bottom and stops at the first, the condition of which allows it to be used. Therefore, the list should be organized so that narrower, more specific conditions are higher in the list, and more common at the bottom.
The buttons allow you to change the position of the pages in the list and thereby change the order of their checking and selection.
In the line of the page there is a button , which performs duplication of the page. Note that it performs a physical page duplication in the template file along with all the objects on it and then all of them are added to the project.
This function makes it much easier to create multi-page templates. Often in a template, one page from another differs only in some details. After setting up the first page and adding all the necessary objects to it, you can duplicate the page saving all created data bindings and after that make the necessary adjustments.
Templates with complex designs can contain a significant number of objects that are added to the project. And when using the duplication function, you can radically shorten the time to prepare a template, eliminating the need to reassign data to the same objects on different pages of the template.
By clicking on the button in the page line, you can delete it and all the objects included in it from the project. This does not affect the template document in any way. The shapes and pages remain but the are not any more used in the project.
Below the list of template objects added to the project, the name of the CorelDraw file that is actually serves a template is specified. At the time of placing any object in the project - this name is automatically changed to the name of the file from which the object is taken. Therefore, in most cases, it is not necessary to change it manually. However, you can do this by clicking on thebutton - it will be selected as the template for the project.
It should be kept in mind that the objects in the project list have a unique identifier associated with the file in which they are located, so in general, you can not just replace one file with another without changing anything in the object list and expect the project to remain functional. However, if the source file from which the objects were taken simply copied to another location or it was duplicated under a different name, then with this option you can bind this duplicate to an existing project.
If you have opened a previously created project, you can click thebutton to quickly access the template file and the plugin will find and open it in CorelDraw, or open the in which the file is located in the Explorer.
For the data substitution, any text and most vector objects are suitable. In order to add an object to the project, you must select it in the list and click the button in the header. If the button is not visible, then the selected object is not suitable for use in the project.
For the selected object it is necessary to specify which data will be substituted into it. For each data type, there are individual settings. They can be edited in the opened window, and also, if desired, you can change there the name for the template object to something more suitable.
One of the parameters - the shift of the current value - is available in the parameters of all data types. As noted earlier, when the project is started, the plugin takes from the Build tab the start date and sequentially increases it by 1 day/week/month, depending on the specified iteration parameter for the project.
Under the current date, which will be substituted in the objects is meant the value obtained after the increase at the current step. Regardless of the iteration step (day, week, month), the full date is always calculated. For the week, the current date is the date of the first day of the week (Monday or Sunday), and for the month - the first day of the month.
When an object is added to the project, then at each step the value of the current date (or calculated on its basis) will be substituted into it. But very often it is required that not the current date but its shifted value should be used.
For example, when you create a weekly journal, you need to set the iteration step to a week for the project. That is, the plugin will cycle through the weeks starting from the specified start date. However, every page of the weekly requires dates for all 7 days. At each step the plugin will calculate one current date equal to the first day of this week. To access all other days, you will need to use the current value shift in the object's parameters. For Tuesday, this will be a shift of +1 day, Wednesday +2 days, etc.
The date shift from the current value can be set in days, weeks or months. And also ignore the value (that is, substitute an empty value) if it goes beyond the month or week of the current value.
The current value shift allows to flexibly manage the data that will be inserted into the template shapes and there are a lot of scenarios for using it.
In addition to the date itself and any it parts - the day of the week, month, etc. plugin allows to calculate and substitute in the objects a number of astronomical parameters - the sign of the zodiac, the time of sunrise or sunset, or the moon, etc.
Part of the astronomical data depends on the geographical position for which the calendar is formed. For example, the time of sunrise and sunset is different in different parts of the earth. For the correct calculation of such data, it is required to specify the geographical coordinates in the Build tab. It's easy to do, using the ReproScripts online service for geopositioning. Specify the name of the city or country and the pluging will pull the necessary coordinates from the server. More about this is written later in the section on launching the project.
For all text data, you can add prefix and postfix in their parameters, which will be attached to the calculated value before substitution into the object.
All text and graphic objects retain its color, font and other parameters after data insertion.
The following types of data are available, calculated for the current date (taking into account the value shift for the object) and loaded into the template:
|Days of the month||
Option: always two digits, that is, for values less than 10, 0 will be added at the front.
|Day of the year||
Day number of the year.
|Day of the week||
You can choose the full or short version and the language used for this object. Default means the language from the Build tab will be used when the project is launched.
Option: always two digits, that is, for values less than 10, 0 will be added at the front. The plugin allows you to specify a rule that determines which week in the year the first for the project is in the Build tab when you start the project.
|Name of month||
You can select a full / short text version and the language used for this object or digital representation. Default means the language from the Build tab will be used when the project is launched.
Option: 4 or 2 digits of the year.
Length of day
All these parameters are geo-dependent. To calculate them, you need to specify the correct coordinates in the project. The value is displayed in the form of time - hours and minutes. You can customize the output of leading zeros and text after minutes and hours.
The output of this value is possible as text. You can choose the full or short version and the language used for this object. Default means the language from the Build tab will be used when the project is launched.
Also, you can display the phase of the moon and the sign of the zodiac in a graphical form - in the template you need to select a vector shape for that (not Artistic or Paragraph text). The plugin can draw an image by its internal algorithm, if the option Draw phases is specified, or substitute symbols from any font (Use font symbols) installed in the system and added in the plugin's settings. More about symbol fonts.
You can add a whole calendar month within the boundaries of the vector object. The insertion of a month is often found, for example, in diaries where for each date a whole month is often added (and often the neighboring months as well).
In order to add a whole month to the page, you need to first create its design in another plugin that is included in the ReproScripts Calendars library — Month builder. In the parameters of the added template object there is a list in which you can select the desired project and configure how it should be inserted.
When preparing a calendar block for insertion, it is desirable to keep it with proportions close to those that will be at the target objects of the CorelDraw template. But in any case, you can specify the scaling options for insertion. The plugin can scale the project either proportionally or non proportionally into the target shape borders.
When creating the calendar block, the plugin will use the language selected from the list in the parameters for it. Default means the language from the Build tab will be used when the project is launched.
Often projects in the Month builder are created with a frame that points to the borders of the month block. The Free layout calendar can remove this frame if necessary during the insertion of the month, without the need to adjust the initial design. To do this, check the remove the outer frame of the block flag
Each calendar project in the month builder contains a list of colors. When you add it to the Free layout calendar, this list will be merged with the existing list in the project by the color numbers. New colors will be added, existing ones are redefined. This allows to centrally manage the color scheme of all the inserted blocks of months, regardless of what colors they were used in the design.
When you create a calendar from the project, the plugin uses the template and substitutes the data in it. All characteristics of source shapes are preserved, including colors, strokes and fonts.
For example, if you draw a rectangle with red fill and black outline and use it to substitute the zodiac sign, the shpe with inserted data in the calendar will also have a red background and a black stroke.
If required the plugin allows to overload fill color and outline parameters for certain conditions. In the object parameters there is a table which contains overloading conditions. By clicking on in the header of which you can select the criterion that will be used to decide whether to use the new parameters instead of existing ones or not.
The following can serve as the overloading criterion:
It is not necessary to change all parameters of the object. If the parameter has a sign, this means it does not need to be changed and remains the same as the original object in the template. Clicking on it allows you open it and select a color (from the list in the Build tab) and other options.
To perform such an overload, you need to add the object to the project list but instead of binding data to it click on thebutton and specify the required replacement conditions in the parameters.
The Build tab contains a number of parameters that allow to manage the process of generating data for the project.
In the Options group, you can specify which day of the week the plugin should consider as the first one and the rule by which the first week of the year is determined.
There are several different approaches to what week in the year to consider first - a week with the first of January, a week in which there are not less than 4 days or a week in which there are all 7 days present.
To calculate some data that can be used in the project, geographic coordinates are required. For example, the time of sunrise and sunset is different in different parts of the planet. If you plan to use such data, you need to specify the coordinates and time zone.
ReproScripts offers an online service, which allows you to download geoposition over the Internet by the name of a city or country. To do this, click the gear button next to the geolocation box 3. In the dialog window that opens, you can type in the name of the area, country, city, postal address, etc. and press the button.
The time zone is taken from the system settings of your computer. If the project is intended for another time zone, then it must be specified manually.
To maintain a single calendar view, the plugin uses a list of colors 2. By clicking the button you can select any color using the standard CorelDraw color dialog box and assign a number to this color.
Colors from this list will be used by the plugin when performing overloading of the design of the template objects, as described above. In addition, if a block of the month from the Month builder plugin has been added to the project, the colors in it will also be replaced.
The plugin starts working from the date specified in the Build tab and then performs its sequential increase. The iteration parameter 1 affects how the date increases. You can select one of the values:
During the development of the project, it is necessary to take into account how it is planned to change the current date in the process of the calendar creation. The iteration parameter directly affects the value that is considered current at each step. And this, in turn, is reflected in the data inserted in the template objects (the value shift is counted from the current date).
To launch the calendar project, you must select a language for text values. If it was not overridden in the object's parameters (= Default), then it will be used for all text objects. Combination of the default language and the possibility to override it in the object's parameters is useful for making multi-lingual calendars.
With ReproScripts plugins 7 languages are installed, you can also add your own language if it is not present in the list. By clicking on the button with the gear next to the dropdown list with languages, you can control them - make corrections to existing values, or add, delete or rename the language.
In the lower right corner of the form there is a button with the image of the gear , clicking on which you can call up the configuration form. In this form, there are four tabs that allow you to specify various data available for all projects and for some other plugins.
The ReproScripts Calendars plugins support lists of holidays and special dates that can be used to specify individual design of different calendar items. Details of how to work with lists and how to download holidays using the ReproScripts online service is described here.
In this tab, you can adjust the values for the 7 standard languages supplied with the plugins and create your own language, which can be used in any projects. Just press and fill in all the values.
A number of parameters in projects require geo-positioning. In the settings, you can set the default value, which will be loaded into all new projects.
The plugin allows to create a graphical representation of the phases of the moon and the signs of the zodiac. It can draw its own images, or you can use character fonts with astronomical symbols installed in the system.
There are quite a few different astronomical fonts, but their developers often arrange the symbols arbitrarily. The plugin needs to know the exact font name and the exact character used to represent the zodiac signs or phases of the moon.
As an example the Windings font is added to the symbol fonts list of the plugin. There are no phases of the moon in it, but it contains signs of the zodiac. If you have other character fonts, click on button to add them to the list and in the appropriate fields enter all the necessary characters. After that this font can be used in any calendar projects.
Having configured a template and project parameters, you can launch it by clicking the button.button. The work of the plugin includes many stages, if on any of them there is a problem then the message can be seen in the status line of the window or in the run-time log, which can be opened by clicking on the