r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[Postscript] Emitting Postscript from REBOL

Graham
26-Feb-2009
[1874]
Most of HP's commercial printers have embedded postscrript interpreters. 
 It's only their home printers that don't.
Robert
26-Feb-2009
[1875]
I will give it a try on my OfficeJet thing. Pretty old and I'm mostly 
sure it won't work. Any good PS file for the test?
Geomol
26-Feb-2009
[1876]
A simple test page: http://www.fys.ku.dk/~niclasen/postscript/test.ps
Graham
26-Feb-2009
[1877]
Officejet sounds like an inkjet ... unlikely to have PS.
Robert
26-Feb-2009
[1878]
He, good point Graham. Whereas I don't understand what influence 
this has on PS interpreter...
Graham
26-Feb-2009
[1879x2]
Mass distribution printers .. the added cost of installing a PS interpreter, 
ram etc.
all cost driven.
DideC
27-Feb-2009
[1881]
Most cheap printer are dumb. The power is in the driver: the computer 
does the job then send raw command to the printer controller. They 
are often called "Winprinter" because of the usually Windows only 
driver they provide (well, not so true today as it used to be a few 
years ago).


Expensive printers include processor, RAM and the firmware to understand 
the print command by themself. PCL or PS ones (but it exists other 
languages like on Kyocera printers, I have done things for that 12 
years ago).
Robert
27-Feb-2009
[1882]
I thought these days, that you just plug-in an embedded Linux, use 
ghostscript and that's it.
Gabriele
1-Mar-2009
[1883]
That still costs money (CPU, RAM, Flash, ...)
Geomol
3-Mar-2009
[1884]
There seems to be a problem with printing parenthesis in my postscript 
dialect. Henrik, I guess, you use this dialect. Did you come across 
this problem?

Others using this postscript dialect?
Henrik
3-Mar-2009
[1885]
I've not encountered it. What goes wrong?
Geomol
3-Mar-2009
[1886x2]
It seems, if parenthesis are not balanced in a string, the output 
is rubbish. I found in the ref manual, that some special characters 
need to be escaped with: \
I've made a new version, I'll upload soon.
See Announce
Henrik
3-Mar-2009
[1888]
thanks
Geomol
5-Mar-2009
[1889]
Henrik, have you ever done landscape with the dialect?
Henrik
5-Mar-2009
[1890x2]
I have tried, but stopped again due to problems with determining 
whether the dialect itself should create a landscape document or 
the printer driver. So I just usually make a portrait document and 
rotate everything 90 degrees.
Also Ghostscript and Preview.app interpret paper orientation and 
size information differently. Ghostscript tends to be more correct, 
it seems.
Geomol
5-Mar-2009
[1892]
Ok, I just wanted to check the ways, we eventually did it. I do this:

PageSize A4
font [Times 7]
page [rotate 90 translate 0x-842
...
]


I use the offset 8x834 for the first line of text on the paper, no 
matter if it's landscape or not. It works.
Geomol
10-Mar-2009
[1893]
Minor update of the documentation: http://www.fys.ku.dk/~niclasen/postscript/postscript.html
Geomol
11-Mar-2009
[1894x3]
PDF output from the PostScript dialect is ready for some test. The 
script is here:
http://www.fys.ku.dk/~niclasen/postscript/rebps2pdf.r

It works the same as the postscript.r script:
http://www.fys.ku.dk/~niclasen/postscript/postscript.r
(which has been updated, as I found some problem with comments)

Example of use:

do http://www.fys.ku.dk/~niclasen/postscript/rebps2pdf.r

write/binary %pdftest.pdf rebps2pdf load http://www.fys.ku.dk/~niclasen/postscript/pdftest.txt

Now you should have a local %pdftest.pdf file, that looks like:
http://www.fys.ku.dk/~niclasen/postscript/pdftest.pdf
Center- and right-alignment of text isn't as easy in PDF as in PostScript, 
so this is left out. See:
http://www.adobeforums.com/webx/.3bc3e853
I also found, that images seems to work in a weird way with the postscript.r 
script producing PostScript output. I have to test this some more. 
For now, scaling images to 72x72 should mean images in 72 dpi. Maybe 
this isn't a good way to scale?
Anton
12-Mar-2009
[1897x2]
The question is, what is the physical size of a rebol image?
The image! datatype doesn't tell you. It must be asserted separately. 
But where, by who?
Henrik
12-Mar-2009
[1899]
Anton, that's a pretty good question.
Pekr
12-Mar-2009
[1900]
Physical size, as in bytes? What about X*Y*4?
Geomol
12-Mar-2009
[1901x3]
I found a bug when specifying ImageMatrix in postscript.r

I've fixed it and uploaded a new version. Now images should work 
the same in postscript.r and rebps2pdf.r
About scaling images and physical size. I know, the image datatype 
only have size in pixels, and how much is a pixel on paper? It's 
up to the one producing the output to set that. An old measure is 
72 dpi, which is 72 dots per inch. So setting this pixel-to-dot scale 
for images, and the image will be:
(# of pixels / 72) inches in size on paper


I'm not 100% happy with the way, I've implemented the scaling of 
images, and suggestions are welcome.
The more I read and learn about the PDF format, the less fond I am 
of it. It's a bloated mess with some critical limites, as I see it.
Pekr
12-Mar-2009
[1904]
hmm, your pdf example above display dialog box with message: there 
is an error on this page. Acrobat may not display the content correctly. 
Please contact the person, who created the page to remove the problem 
.... (free translation from czech)
Geomol
12-Mar-2009
[1905x2]
In PDF, the only way to get center- and right-aligned text, is to 
know the size of each character in the font, and then calculate the 
starting left position yourself. It seems, all people on the planet 
producing PDF does it this way:
http://www.adobeforums.com/webx/.3bc3e853
Pekr, do you try to open this?
http://www.fys.ku.dk/~niclasen/postscript/pdftest.pdf
Pekr
12-Mar-2009
[1907]
yes, it launches in FF 3.0.4
Geomol
12-Mar-2009
[1908x2]
Maybe encoding? ok, I'll try change encoding. one moment...
Pekr, try reload it again.
Pekr
12-Mar-2009
[1910]
now it's ok ...
Geomol
12-Mar-2009
[1911x3]
Strange, I just tried on my PC, and I get a blank page. It works 
on my Mac. hmm
I think, there a problem. Adobe Reader give an error "Ilegal operation 
'm' inside a text object." on my PC.
Pekr, what version of Adobe Reader do you have installed?
Pekr
12-Mar-2009
[1914]
version 9.0.0 Czech ...
Geomol
12-Mar-2009
[1915x3]
Thanks, I get the error in a version 6.0. Now I have to figure out, 
if I stick to PDF 1.3 standard.
And I don't ... damn! Changes on the way...
I updated:
http://www.fys.ku.dk/~niclasen/postscript/rebps2pdf.r
and http://www.fys.ku.dk/~niclasen/postscript/pdftest.pdf

How does it look now?
Pekr
12-Mar-2009
[1918]
No problems here ...
Geomol
12-Mar-2009
[1919]
The way to do center- and right-aligned text in PDF is to get the 
Font Metrics like these for the 14 standard fonts (see "PDF CORE 
FONT INFORMATION" near the bottom):
http://www.adobe.com/devnet/font/


and calculate the size of the text and then the position. For other 
fonts, you need similar info.
Gabriele
13-Mar-2009
[1920]
Geomol... code to do that has been available for like 6 years...
Geomol
13-Mar-2009
[1921x2]
:-) Do you do it using font metrics in pdf-maker, or is there another 
trick?
Seems like you use font metrics (metrics.bin).
Gabriele
14-Mar-2009
[1923]
right, font metrics. Volker wrote a script to parse the .afm files.