CCAL-2.5.3
While the web interface of the ccal program offers additional
output formats, such as PNG or JPEG,
PDF and PDF with your own
picture, for you to make your own Chinese calendars in addition to
HTML, XML
and EPS formats which
the program natively supports, it is better to download the program if you
have limited bandwidth.
The ccal utility is a simple-to-use command line program
which writes a Gregorian calendar together with Chinese calendar to standard
output. Its usage is similar to the cal program generally
available on Unix platforms. In addition to console output, it can also
generate Encapsulated Postscript and HTML table outputs for use in
do-it-yourself calendars and web pages. It supports both simplified and
traditional Chinese characters. A pre-formatted manual page is available
here. This program is released under the
GNU General Public
License.
For Windows platform, executable and documentation are available in
a Zip archive:
ccal-253.zip (107 KB)
To install, just extract the files into a folder of your choice
and either set the system path to this folder or move the ccal.exe file into
a folder on system path, such as C:\Windows. To uninstall, simply delete the
extracted files. To use, open a Command Prompt window and issue
ccal commands. The following figure illustrates use of ccal.
In the above illustration, the first command generates an EPS
format calendar for Year 2033 and saves it in file 2033.eps. The second command
displays the calendar for December 2033 in ASCII mode.
For RedHat Linux, the binary and source rpm packages are available. The
source rpm package was built with help from Mr. He
Wei. Both source and binary packages were built on Fedora 11:
ccal-2.5.3-1.i386.rpm (112 KB)
ccal-2.5.3-1.src.rpm (127 KB)
For other platforms, or if you want to get the source, you can get:
ccal-2.5.3.tar.gz (125 KB)
You will need a recent C++ compiler with the Standard Template Library
in order to compile the source codes.
History of changes:
March 4, 2012, changes from 2.5.2 to 2.5.3:
- Incorporated latest updates in NOVAS-C package.
- Replaced size_t with int to avoid problems on some 64-bit platforms.
- For console output, highlights today with ANSI reverse video on non-Windows
platforms, as recommended by Mr. Daniel Lin.
January 29, 2012, repackaged 2.5.2:
- Adjusted sequence of includes to satisfy GCC 4.6.
October 5, 2009, changes from 2.5.1 to 2.5.2:
- Fixed bug causing 6th week line not to show in certain cases.
August 15, 2009, changes from 2.5 to 2.5.1:
- Updated layout code to render the 6th week line only when necessary.
- Updated sample style sheets to do the same.
July 25, 2008, changes from 2.4 to 2.5:
- Adopted formulae published by NASA in computing ΔT for
improved accuracy.
- Updated parameters for moon phase computation from 2005 printing of
second edition of Astronomical Algorithms by Meeus.
- Added corrections based on results from DE405 for a few cases for
years between 1645 and 2200.
- Improvements in efficiency of computation.
March 26, 2006, changes from 2.3.3 to 2.4:
- Added XML mode.
- Added ccalhtm.xsl sample.
July 6, 2004, changes from 2.3.2 to 2.3.3:
- Corrected a bug in ASCII mode that causes large number of blanks being
printed if the month title is wider than the calendar body.
June 19, 2004, changes from 2.3.1 to 2.3.2:
- Added Chinese output in title for HTML output for use in Chinese web
pages.
- Added ccalpdf shell script to create PDF calendar using ghostscript which
must have been installed to function. Its manual page is also added. It
works on UNIX and cygwin on Windows.
October 20, 2003, changes from 2.3 to 2.3.1:
- Corrected a bug in PostScript mode that caused incorrect format for
a yearly calendar when a jieqi and new lunar month day fall on the
same day. Both yearly and monthly calendar should show correct
behavior now.
October 4, 2003, changes from 2.2 to 2.3:
- For any calendar month with new lunar month(s) starting in it, added
starting date(s) of lunar month(s) to month header to reduce confusion
on to which lunar month a day belongs.
- Added UTF-8 support for outputing either traditional or simplified
Chinese characters in character or HTML modes.
- In character mode, if output is in either traditional or simplified
Chinese, the names of days of week were changed from full English
words to 3-letter abbreviations and Chinese names like in HTML or EPS
modes.
- Corrected a bug in PostScript mode that caused incorrect format for
a monthly calendar when a jieqi and new lunar month day fall on the
same day.
January 29, 2003, changes from 2.1.1 to 2.2:
- Released under the GNU General Public License.
- Added logic to remove unused or duplicated character definitions in
EPS output which reduced the size of EPS output for monthly calendar
by around 15%.
- Incorporated latest updates in NOVAS-C package.
July 20, 2002, changes from 2.1 to 2.1.1:
- Modified format string in a printf statement to work around a strange
compiler bug that affects Windows executable causing the EPS output to
malfunction for yearly calendar or for the month of March.
- Replaced one Chinese character with a better looking alternative.
June 20, 2002, changes from 2.0 to 2.1:
- Added outputs of either traditional or simplified Chinese characters
in character mode in addition to the existing ASCII output.
- Enhanced the ASCII output to show whether a lunar month is a long
month or a short month.
March 24, 2002, changes from 1.2.2 to 2.0:
- Added support for traditional Chinese characters for both EPS mode
and HTML table mode.
- For EPS mode, vector Chinese font is used in place of bitmap font.
This will enable the resulting EPS calendar to be arbitrarily scaled.
- Newer style DSC is used in EPS output.
- Corrected mode in man page install in Makefile.
August 24, 2001, changes from 1.2.1 to 1.2.2:
- Should a new lunar month and a solarterm fall on the same day, they
are now marked together except in ASCII mode in which the marking of new
lunar month is moved to the next day.
- To mitigate the confusion on which lunar month it is for a lunar date
since the heading always refer to the lunar month(s) to start
which is not always noted by a reader, marking of lunar month is added
to the 1st of each calendar month except in ASCII mode or in yearly
EPS mode.
- For EPS mode, changed font for date numbers from Times/Courier to
Bookman which scales better with the Chinese characters underneath.
December 10, 2000, changes from 1.2 to 1.2.1:
- Corrected a bug in determining the first lunar date of the year. The
bug will cause the lunar dates for January to be one less until the new
lunar month for a few years.
- Added check to make sure the new moon times returned is within the
specified period. Previously it may go slightly out of the bound.
August 24, 2000, changes from 1.1 to 1.2:
- For Encapsulated PostScript output, the resources are reorganized to include
only those necessary for the current file. This significantly reduced the
size of a monthly calendar.
- Separated version report into a header file. Also version information is
displayed with usage information.
April 1, 2000, changes from 1.0 to 1.1:
- Substituted high resolution Chinese font for monthly calendar to eliminate
the jagged look. The new fonts look reasonably smooth even when the calendar
is enlarged to occupy a full page.
- A cache of years from 1950 to 2050 is added to improve the performance on
slower computers for those years.
- In Encapsulated PostScript output, font selection was changed to use late
binding rather than early binding since some versions of the Microsoft
PostScript driver fails to embed the picture correctly with early binding.
- In Encapsulated PostScript output, a redundant font comment is removed.
Back to Make Your Own Chinese Calendar
Created by: Zhuo Meng (zxm8@case.edu)
|
Usual disclaimer applies
|