Archive for the ‘publishing’ Category

DANTE e.V. Frühjahrstagung 2016

Wednesday, April 20th, 2016

I was a speaker at the TeX users meeting in Wuppertal, with the talk “Erfahrung und Vorhersagen für automatisches XML-nach-PDF-Publizieren mit TeX” (experience and prediction for automatical from-XML-to-PDF publishing using TeX).


python libxml2 dita

Thursday, January 21st, 2016

python libxml2 dita

For correct transformation of DITA files (XML-standard for modular documentation), it is necessary to pull information from DTD (document type definition). In my python code, sometimes I did get this information and sometimes not. Now I’ve tracked the source of instability and corrected the code.


Printing unusually sized PDFs

Monday, December 21st, 2015

The PDF is of some non-standard landscape layout, the printer is an usual A4 printer, the software can’t handle the mix correctly. The solution is to tune the dimensions of the PDF pages manually.


le-tex transpect: how to use docbook-to-docx stylehseets

Thursday, December 10th, 2015

For XML to DocBook to .docx conversion, I found that “le-tex transpect” framework has solved many technical issues already, so I overcame the “not invented here syndrome” and decided to rely on this tool. To tune the stylesheets for own needs, I created a github copy of the repository: docxtools. To run the stylesheets outside the framework, a special setup is required. The setup is described in the folder “doc/hello-world“.

using freebidi from python using ctypes

Monday, December 8th, 2014

GNU FriBidi is an implementation of the Unicode Bidirectional Algorithm (bidi). There is a Python binding PyFribidi, but it is not complete. What I need is not a visual presentation of a string, but information where direction is changing. This function is not provided by the binding, therefore I’ve made an alternative using ctypes.


solved: createInstanceWithContext: Binary URP bridge disposed during call

Wednesday, January 9th, 2013

I decided to experiment with OpenOffice automation from Python, found the official PyUNO wiki, followed the “a must read” link PyUNO bridge and tried the proposed hello-world program ““. As it was feared, nothing worked immediately. The error was:

Traceback (most recent call last):
  File "", line 19, in 
    desktop = smgr.createInstanceWithContext( "",ctx)
__main__.RuntimeException: Binary URP bridge disposed during call


PDF external streams are not supported

Monday, January 17th, 2011

Theoretically, a part of a PDF file is allowed to be stored externally. The “external streams” were introduced already in an ancient PDF specification. But only Acrobat (Reader) 5 supports it. For Acrobat 8, one has to find a hidden security option to activate support. Apple Quartz seems not to support external streams at all. The same for poppler (definitely, the source code is checked) and maybe its ancestor xpdf.

XML to paper publishing with manual intervention

Thursday, April 15th, 2010

My paper “XML to paper publishing with manual intervention” is accepted for XATA 2010 (XML: Aplicações e Tecnologias Associadas), 19 and 20 May, Vila do Conde, Portugal. Abstract:


XeLaTeX: change font for headers and footers

Friday, October 24th, 2008

I’ve noticed that headers and footers of the documents, generated by XeLaTeX, use some other font instead of Helvetica. After digging into the LaTeX code, the problem is solved.


fighting pstoedit

Wednesday, September 24th, 2008

I wanted to convert text to curves in PostScript. The well-known tool to do it is pstoedit (alternatives are welcome). Unfortunately, it worked only partially.


if I were writing an XML editor

Thursday, July 10th, 2008

There is a number of XML-editors, but there are no user-friendly ones (except FraemMaker). A standard XML editor is a tool for programmers, to play with XML. But technical writers need an user-centric XML editor, to play with a document, not with XML.


DocBook XML publishing service

Monday, February 4th, 2008

I’m not the only one who works on a publishing server. Steve Whitlatch announced recently Mr. XML Publisher for DocBook, a free online publishing server. You feed a DocBook to the service, and the service returns back the corresponding PDF.

printing djvu books under Linux

Thursday, January 24th, 2008

When I print books, I prefer to have two pages per sheet. With PostScript or PDF books it’s easy, I just use But for djvu format, the procedure is complicated.


From A4 to A3 (A2, A1, A0)

Saturday, June 30th, 2007

I’ve prepared a poster. For the development purposes, the paper size is A4. Now I need to enlarge the paper size. Here is a sequence of the commands which got the things done:

TeXML paper and poster

Saturday, June 23rd, 2007

A paper about TeXML and Consodoc is published in TUGboat 28:1, 2007: TeXML: Resurrecting TeX in the XML world. Also, the tools were presented as a poster at XML Prague 2007 conference: “XML to beautiful documents: TeXML and Consodoc“.

post-xmlprague notes

Tuesday, June 19th, 2007

I like Prague, it’s a very beautiful city. My contribution to XML Prague 2007:
* paper “Generative XPath
* presentation slides
* poster XML to beautiful documents, and how it looked like

poster proposal for XML Prague 2007

Monday, June 11th, 2007

In addition to my talk “Generative XPath” at XML Prague 2007, I decided to submit also a poster:

Title: XML to beautiful documents

Abstract: I’d like to present an alternative to XSL-FO. Using TeX to create PDF from XML is an old trick, but thanks to TeXML (an XML syntax for TeX) and Consodoc (a publishing server), the process is greately simplified and the produced documents are of high quality.

* — URL linking to a web page related to the poster.
* a better “psnup -2”

Sunday, October 1st, 2006

A new tool from me. puts two PostScript pages onto one page. It is similar to “psnup -2”, but
* drops the margins, and
* zooms the pages as much as possible.

fixing /invalidfont in ghostscript

Sunday, October 1st, 2006

Recently I updated ghostscript, and it stopped working even on its own examples:

$ pwd
$ ps2pdf ~/a.pdf
ERROR: /invalidfont in findfont
Operand stack:
   (Palatino-Italic)   Font   (Palatino-Italic)   228176   (Palatino-
   Italic)   --nostringval--   (Palatino-Italic)   URWPalladioL-Ital
   Times-Italic   NimbusRomNo9L-ReguItal
Execution stack: