[Scribus] Combo boxes etc.
John Jason Jordan
Mon Nov 13 22:48:12 CET 2006
On Mon, 13 Nov 2006 20:37:50 +0000
Calum Polwart <scribus at wittongilbert.free-online.co.uk> dijo:
> > OK, one of the controls will be used to display IPA characters. For my
> > test document (which you can see in PDF form at
> > http://www.pdx.edu/~johj) I created a simple database with a field
> > called IPA. In each record I typed one IPA character, but I stopped
> > when I had 105. Ultimately I will probably want more. There are
> > hundreds and hundreds of possible IPA characters. If you look at the
> > PDF on my web site above, you will see how I used OpenOffice.org writer
> > to create a PDF where the description of a sound is followed by a
> > drop-down button. When you click on a button the student can choose the
> > character that is used to transcribe that sound.
First, I gave the URL wrong above. It's "web" not "www":
> OK judging by what Peter has said using anything but the standard
> Acrobat Fonts is fraught with problems - your user needs to have 'use
> local fonts' enabled in acrobat, and have the font on their machine for
> a start.
OK, the PDF at the site above (made with OOo, not Scribus) is set with
the Junicode font. Several people have downloaded the PDF and have
viewed it just fine without needing to install the Junicode font first.
That is, when I exported from OOo as PDF, it automatically embedded the
Junicode font (a subset, but it works). I also set the controls (PDF
fields in Scribus-speak) to Junicode, but that didn't make it to the
PDF. It seems that OOo is hard coded to set the font for a control to
Helvetica on PDF export. I set the controls to Junicode, and they
appear fine in Junicode as long as the document remains an OOo
document, but not after exporting to PDF. Adobe Reader 7.0 does not
have Helvetica, so it substitutes a couple of its internal fonts for
Helvetica. The result is what you see in test_form.pdf at the site
Turning on Use Local Fonts in Reader makes no difference. The Junicode
font is properly embedded for the text of the document whether Use
Local Fonts is turned on or not, and it is not embedded for the
controls, whether Use Local Fonts is turned on or not. My understanding
is that the purpose of Use Local Fonts is to speed up screen display
and (most importantly) printing, especially if a font in the PDF is the
same as a font that is resident in the printer. I has no effect on
whether a font appears in the document or not. That is determined by
whether the program creating the PDF embedded the font.
> I couldn't access your sample so I don't really know what it is you want
> to do but must multiple choice papers I've ever sat would have tick
> boxes (or radio buttons if electronic) rather than a drop down.
The problem is the characters that I need in order to display the
International Phonetic Alphabet (IPA). Of the thousands and thousands
of fonts used in the world, there are only a handful that 1) are
Unicode compliant and 2) contain glyphs for all the IPA characters.
Junicode is one of them, and my fave because it is free, open source,
and not tied to organizations of questionable ethics (Summer Institute,
but that's getting off topic, so forget I said that). Helvetica does
not contain the IPA characters, nor do any of the internal fonts that
Adobe Reader uses. Look at the controls on the first page of
test_form.pdf to see what happens. When you click on the drop-down it
displays characters. Note that a lot of the "characters" are just dots.
All of those are really characters, it's just that Helvetica and the
Adobe Reader fonts don't have glyphs for those Unicode slots, so
> You can do that on scribus because the text box with the 'answers' would
> just be a normal text box...? I quickly threw something together which
> might be in a language we both understand... see here:
Yes, I can create such forms with OOo or with Scribus, but they are not
what I need. The problem is typing. The goal is to create worksheets,
practice sheets, homwork documents and even exams for students to
download and fill out. Until now the professor would make such a form
as a regular PDF without PDF fields, leaving space for students to
write their answers in their own handwriting. Unfortunately, correcting
papers is a major PITA, and doing it this way makes it even harder
because the professor has to struggle with students' handwriting.
Having a drop-down with the characters resolves this problem
beautifully. I also thought of asking students to just type their
answers on a simple word processor document, but they seem incapable of
figuring out how to type characters that do not appear on their
keyboards. Insert Special Character is a mystery to them. Typing
decimal or hex codes is even worse. Their attitude is "I don't know how
to do that, therefore it must be unnecessary." It's a lot easier to
have a control where they can just click on the character. You'd think
university students majoring in linguistics would acquire a clue about
how to use their computers, but evidently not. Furthermore, many must
use the computers at the university's computer labs, and it is a major
effort to get the computer science people to agree to install a font
like Junicode. All in all, it's easier just to give them an editable
PDF that they can't screw up and that works everywhere.
> Now - where does the database fit in? Is this some form of automatic
> mail merge you were looking for to create the questions??
The database may not be necessary with Scribus. I connected the
controls in the OOo form to a database because the funtionality was
there and it seemed easier. For example, in test_form.pdf I connected
the controls to fields in New_Database.odb. New_Database has a field
labeled "IPA" and another labeled "Number." To display the characters
in the controls on page 1 of test_form.pdf I connected the controls to
a query that not only grabs the contents of "IPA" but displays it in
the order of "Number." This way I can easily and quickly change the
order in which the characters appear by changing the Number field.
Without this the characters would appear in some random order, making
it much harder for students to scroll through and find the right
character. I wanted them in sort-of alphabetic order.
With Scribus I could use a list for the drop-down, but a list with
several hundred IPA characters might become unwieldy. Then again, that
big a drop-down may be unwieldy for students to use as well. The "IPA"
field currently holds only 105 records. Ultimately it needs to hold
about 500 or more. My plan was to use the same field for other similar
controls, but change the query to select only a subset of the total,
depending on what character were being studied at the moment. For
example, the drop-down does not need to display the characters for
implosives until the class gets to the chapter where implosives are
discussed, and so on. Each worksheet would probably need only about a
hundred characters, and that many I could do in Scribus with a list for
the PDF field. It's just easier with a database.
The long and the short of it is that I can create the editable PDFs in
Scribus just as well as in OOo, even without the database connection
functionality, except that the problem of embedding the font remains.
OOo is hard coded to use just one, Scribus allows you to choose from
several. But the several that Scribus offers are unsuitable because
none of them have all the IPA characters. So neither program can do
what I need. However, I found a bug report on openoffice.org where this
issue was discussed, and it seems that there are no plans to change
this behavior for a very long time. Scribus development, however, is
much more reponsive, and what I need may be available relatively soon.
I await it eagerly. Scribus is my best hope for a solution. In fact,
without it, the only possibility is to use MS Word and Adobe Acrobat
Professional 7.0 or later, and to get Windows to install them on
(Acrobat cannot be made to run on Linux). Even at student rates that is
$500 or more. Plus I hate Word. Anything but Word. Squishing marks in
wet clay would be preferable to Word. Just let me use Scribus. Scribus
"thinks" the way I do. :)
I hope that clarifies what the problem is. Thanks to all who have
offered suggestions and help.
More information about the scribus