PDF::Writer, embedding non-PNGs

B

Bertram Scharpf

Hi,


the PDF::Writer documentation reads:

add_image(image, x, y, ...)

Add an image from a loaded image (JPEG or PNG) resource ...
^^^^ ^^^

The image I want to embed is in PostScript. In concrete, it is the
output of the GNU barcode tool.

Is there any smarter way to embed it than to convert it to a pixel image
without knowing the printers resolution?

Thanks in advance,

Bertram
 
A

Axel Etzold

-------- Original-Nachricht --------
Datum: Wed, 19 Dec 2007 18:11:33 +0900
Von: Bertram Scharpf <[email protected]>
An: (e-mail address removed)
Betreff: PDF::Writer, embedding non-PNGs
Hi,


the PDF::Writer documentation reads:

add_image(image, x, y, ...)

Add an image from a loaded image (JPEG or PNG) resource ...
^^^^ ^^^

The image I want to embed is in PostScript. In concrete, it is the
output of the GNU barcode tool.

Is there any smarter way to embed it than to convert it to a pixel image
without knowing the printers resolution?

Thanks in advance,

Bertram

Dear Bertram,

from PDF::Writer's documentation,

(http://www.artima.com/rubycs/articles/pdf_writerP.html and
Changelog in pdf-writer-1.1.7)

it seems that it doesn't yet support any vector graphics or eps file support.
An alternative, -- non-Ruby -- way would be to use latex to embed eps
files and create a pdf from there, modifying the template.tex
file with the entries for creating images, given in this tutorial:

http://www.pages.drexel.edu/~pyo22/students/latexRelated/latexTutorial.html

That webpage is now a bit dated, so for the installation of latex,
I'd rather recommend this:

http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=xetex

Use the command 'xelatex' from the xetex package on the source file
created. I think it will output a pdf straight away.

Best regards,

Axel
 
B

Bertram Scharpf

Hi,

Am Mittwoch, 19. Dez 2007, 20:26:57 +0900 schrieb Axel Etzold:
-------- Original-Nachricht --------


it seems that it doesn't yet support any vector graphics or eps file support.
An alternative, -- non-Ruby -- way would be to use latex to embed eps
files and create a pdf from there, modifying the template.tex
file with the entries for creating images, given in this tutorial:

This is very disappointing. I expected it were at least possible to
embed another PDF document on the page.

One further way failed as well: I found a Code39 barcode font on the web
as a TrueType font. Trying to embed it as described in the manual yields
the fatal message:

/usr/lib/ruby/gems/1.8/gems/pdf-writer-1.1.3/lib/pdf/writer.rb:878:in `load_font': undefined local variable or method `fbfile' for #<PDF::Writer:0xb788ad6c> (NameError)

This seems to be a severe bug as the variable `fbfile' doesn't appear
anywhere else in the whole /usr/lib/ruby tree.

It seems that TeX still remains the only real typesetting system.

Bertram
 
A

Austin Ziegler

One further way failed as well: I found a Code39 barcode font on the web
as a TrueType font. Trying to embed it as described in the manual yields
the fatal message:

/usr/lib/ruby/gems/1.8/gems/pdf-writer-1.1.3/lib/pdf/writer.rb:878:in `load_font': undefined local variable or method `fbfile' for #<PDF::Writer:0xb788ad6c> (NameError)

PDF::Writer 1.1.3 is not the most recent version. I believe that Greg
and Michael fixed some font bugs.

Your expectation (of being able to embed EPS or another PDF) is
unrealistic given the reality of the internal implementation of PDF.
If you can grab the drawing instructions from an EPS (not hard, and
can be programmed), you can insert them directly into an object stream
on a PDF. (I've actually done this, manually.)

-austin
 
B

Bertram Scharpf

Hi,

Am Mittwoch, 19. Dez 2007, 22:10:53 +0900 schrieb Austin Ziegler:
PDF::Writer 1.1.3 is not the most recent version. I believe that Greg
and Michael fixed some font bugs.

Sorry, both Gentoo and FreeBSD install 1.1.3 by default.

/local/gems/pdf-writer-1.1.7/lib/pdf/writer.rb:844:in `load_font': undefined local variable or method `fbfile' for #<PDF::Writer:0xb77e2400> (NameError)

Bertram
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,756
Messages
2,569,534
Members
45,007
Latest member
OrderFitnessKetoCapsules

Latest Threads

Top