View Issue Details

IDProjectCategoryView StatusLast Update
0006227ScribusPDFpublic2008-01-14 20:59
Reportertobiashagberg Assigned Tofschmid  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
PlatformLinuxOSUbuntu 7.04OS VersionUbuntu 7.04
Product Version1.3.4 
Target Version1.3.5Fixed in Version1.3.5svn 
Summary0006227: Pre-press PDF/X-3 export fails to embed/outline page info print mark font
DescriptionWhen selecting PDF/X-3 in compatibility drop down menu in the General tab and selecting Page information in the Printer Marks section of the Pre-Press tab, the default page information font (Helvetiva, it seems) is not outlined nor embedded in the resulting PDF file.

The preflight system used by my printer (Print24 in Germany) complains about the missing font. As a workaround, I remove the Page information print mark altogether.
Steps To ReproduceSee above.
TagsNo tags attached.
Patch

Relationships

has duplicate 0006637 closedjghali PDF/X-3:2002 exports, errors if testet with PDFX-3Inspector, V2.1.018 but not with errors testet with Preflight, 7.0.5 (106) 
child of 0005693 closedplinnell 1.3.5 bug collection (prior to roadmap) 

Activities

timpul

2007-09-18 17:44

reporter   ~0017314

Did you write some text in the page with Helvetica?
Or is this font at bleeding as page info?
Out of cropping area no font can be embedded. This is fact.
I think Adobe Indesign won't embed fonts from this area.

The developers think this base font can be found on all systems.
If you wrote some text on the page with Helvetica you would be able to select and send to "fonts to embed" box.
See enclosure.

2007-09-18 17:45

 

Helveticaembed.gif (15,426 bytes)   
Helveticaembed.gif (15,426 bytes)   

tobiashagberg

2007-09-18 18:40

reporter   ~0017315

Last edited: 2007-09-18 18:43

I did not use Helvetica in my design. Helvetica only appears in Page info space added by Scribus to accomodate for the print marks. The font is used by Scribus to print the document name, folio and date.

I think that whatever font that is used for the Page information text should respect the font handling settings that are used for other fonts in the document, i.e. the page info font should be embedded when all other fonts are embedded, and outlined when other fonts are outlined.

Note that the complaint originally came from the printer, not from me. Their PDF preflight system would simply not accept my files unless I removed the page info. If I recall correctly, they use ApogeeX from Agfa.

I Scribus won't allow me to send files that the printer accepts, I won't be using Scribus any more.

I do not think using Helvetica in the page area only in order to have it included is an option -- it's way too hackish. Are you seriously suggesting I should include Helvetica dummy text in a page in order to work around a bug in Scribus?

tobiashagberg

2007-09-18 18:48

reporter   ~0017316

Last edited: 2007-09-18 18:50

> Or is this font at bleeding as page info?

I believe I used the phrase "Page info" several times in my report.

> Out of cropping area no font can be embedded. This is fact.

OK. Fact or not, it's still a problem for me.

> I think Adobe Indesign won't embed fonts om this area.

That may be the case. I have not used Indesign. However, this does not solve my problem -- for quality reasons the printer refuses to deal with files that does not include or outline all fonts. I wish this was not so, but hey -- I'm not running Print24. I'm just one of their open-source-loving customers.

plinnell

2007-09-18 21:38

viewer   ~0017319

Can you attatch the pdf or a a couple of pages exported with the same settings as the PDF you sent the printer ?

tobiashagberg

2007-09-19 13:47

reporter   ~0017323

I am trying to attach an example file using the Upload File form, but I keep getting this error message:

APPLICATION ERROR 0000200

A required parameter to this page (bug_id) was not found.

Maybe it's too big for the system (it's 6MB+).

You can download the file from here instead:
http://tomato1.hme.se/tmp/kaffeknytis/kaffeknytis-cover.pdf

timpul

2007-09-19 16:42

reporter   ~0017324

re:Are you seriously suggesting I should include Helvetica dummy text in a page in order to work around a bug in Scribus?

No! If you don't use Helvetica on the page what's the problem??? If it's printed as outline or sent as text are all the same.

Firt I've written into PDF and printed it from Acrobat. Acrobat doesn't tell problem.

Your export fails? How could you create this enclosed pdf if PDF/X-3 export failed?????

tobiashagberg

2007-09-19 17:45

reporter   ~0017325

Last edited: 2007-09-19 18:10

timpul, please read my initial bug report carefully. When I say "PDF/X-3 export fails to embed/outline page info print mark font", I mean exactly that, not that the export itself could not be completed. Maybe "PDF/X-3 export FUNCTION fails to embed/outline page info print mark font" would have made more sense.

Also take a look at my additional notes and the file I link to in the above note. This bug report has got nothing to do with failing exports. Instead, it's a simple case of a commercial printer refusing to deal with a PDF/X-3 file created with Scribus. The reason is clearly stated above. I also mention a way to work around the problem and suggest a way to deal with the problem.

plinnell

2007-09-19 22:17

viewer   ~0017329

I see the issue and in this case, the printer is being a bit too pedantic IMO. I inspected this with PitStop Pro and found that indeed Helvetica is not embedded.

This is a normally sane choice as *by definition*, any PDF viewing application should have Helvetica or Arial along with the other 'base 14' fonts. Thus, Scribus normall does not embed Helvetica or any other base font if its not within the page box which defines the area to actually be printed. This is all clearly defined in the PDF specs.

That said, any printer worth their salt should have PitStop Professional which can re-embed the fonts, especially the base14 - even if strictly speaking *no* PDF should need to embed them. In fact, the defaults for Acrobat Distiller do not embed them either - even when using 'pre-press' settings. I know as I have had to force Distiller to embed some of these fonts owing to different metrics because of cross-platform issues.

Re-embedding them was trivial for me and I will upload your file which I have re-embedded ArialMT as a replacement for Helvitca soon.

plinnell

2007-09-19 22:37

viewer   ~0017330

http://atlantictechsolutions.com/temp/kaffeknytis-coverresave.pdf
http://atlantictechsolutions.com/temp/kaffeknytis-cover-pitstopreport.pdf

This is the resaved PDF with the font re-embedded and a PDF of the PitStop report. I also ran a PDF-x3 preflight and it passed. The output from the report is a mess to read however.

I am confident this now should be acceptable at the printer.

Scribus has supported PDF-X3 since 2003 and this is the first report of this kind.

tobiashagberg

2007-09-20 07:18

reporter   ~0017332

Last edited: 2007-09-20 07:26

Big thanks for your clarifications regarding the PDF/X spec and for running the file through PitStop.

A few more questions/observations:

* The page info font does not render correctly in Evince on my Linux box. In Adobe Reader on the same machine, it it substituted with Adobe Sans MM (see attachements scribus-evince.png and scribus-adobereader.png). I don't know if it is related, but I think so.

* I understand your point about the base 14 fonts. Still, what harm would it make to handle the page info font exactly the same way as other fonts in the document, other than slightly increasing the file size? Print24 (http://print24.de) uses 100% automatic preflight and quality checks in order to keep prices down. I believe such systems only will get more common in the future. I could not agree more about them being too picky, but I do plan to use them again in the future. Anything sane that Scribus developers can do to make life smoother for designers is good, IMO. It does not break the specification to embed a base14 font, does it?

* If embedding is a licensing issue, why not default to a 100% free font instead of a base14 font, and always make sure that it is embedded/outlined?

* I do not have access to Windows or OS X, neither do I plan to make Acrobat Professional+plugins run under wine on my Linux box. Anybody know of a Linux alternative to PitStop for font embedding? I tried a a PDF->PS->PDF conversion scheme (manually specifying a font path where Helvetica Type 1 fonts live) using Ghostscript, but it did not work.

2007-09-20 07:19

 

scribus-adobereader.png (121,534 bytes)   
scribus-adobereader.png (121,534 bytes)   

2007-09-20 07:19

 

scribus-evince.png (284,293 bytes)   
scribus-evince.png (284,293 bytes)   

plinnell

2007-09-20 14:33

viewer   ~0017335

>Big thanks for your clarifications regarding the PDF/X spec and for running the >file through PitStop.

>A few more questions/observations:

>* The page info font does not render correctly in Evince on my Linux box. In >Adobe Reader on the same machine, it it substituted with Adobe Sans MM (see >attachements scribus-evince.png and scribus-adobereader.png). I don't know if >it is related, but I think so.


Forget Evince as a viewer for Scribus files... It simply does not have enough functionality. See: http://docs.scribus.net/index.php?lang=en&page=pdfexport1

Adobe Reader is performing as expected.

>* I understand your point about the base 14 fonts. Still, what harm would it >make to handle the page info font exactly the same way as other fonts in the >document, other than slightly increasing the file size? Print24 >(http://print24.de) [^] uses 100% automatic preflight and quality checks in >order to keep prices down. I believe such systems only will get more common in >the future. I could not agree more about them being too picky, but I do plan to >use them again in the future. Anything sane that Scribus developers can do to >make life smoother for designers is good, IMO.

Well, the fix here is to force embed/outline the missing fonts.

>It does not break the specification to embed a base14 font, does it?

No. As I explained it is typically disabled however.

>* If embedding is a licensing issue, why not default to a 100% free font >instead of a base14 font, and always make sure that it is embedded/outlined?

In general, no not an issue. I think we could come up with something useful.

>* I do not have access to Windows or OS X, neither do I plan to make Acrobat >Professional+plugins run under wine on my Linux box. Anybody know of a Linux >alternative to PitStop for font embedding? I tried a a PDF->PS->PDF conversion >scheme (manually specifying a font path where Helvetica Type 1 fonts live) >using Ghostscript, but it did not work.

That is known as 're-frying' a PDF and generally not a good idea. There is not a 1 to 1 match of PDF and PS features/operators.

As for alterntatives. Podofo (http://podofo.fs.net) is the base library which we hope will enable some of these capabilties. See: http://rants.scribus.net/2006/12/10/pdf-surgery/ Some serious knowledge of PDF internals is needed to really use it however.

2008-01-14 11:02

 

6227_pdflib_outline_docinfo.patch (2,238 bytes)   
Index: scribus/pdflib_core.cpp
===================================================================
--- scribus/pdflib_core.cpp	(revision 11452)
+++ scribus/pdflib_core.cpp	(working copy)
@@ -36,6 +36,7 @@
 #include <QDir>
 #include <QList>
 #include <QByteArray>
+#include <QPainterPath>
 #include <QPixmap>
 #include <QTextCodec>
 #include <cstdlib>
@@ -814,10 +815,6 @@
 			}
 		}
 	}
-	if (Options.docInfoMarks)
-	{
-		StdFonts.insert("/Helvetica", "");
-	}
 	QStringList patterns = doc.getUsedPatterns();
 	for (int c = 0; c < patterns.count(); ++c)
 	{
@@ -2373,28 +2370,33 @@
 		}
 		if (Options.docInfoMarks)
 		{
-			QString tmp = "";
-			double startX = markOffs+bleedLeft+10.0;
+			FPointArray  textPath;
+			QPainterPath painter1, painter2;
+			QFont   infoFont("Helvetica", 7);
+			double  startX = markOffs+bleedLeft+10.0;
 			QString docTitle = doc.documentInfo.getTitle();
 			if (docTitle.isEmpty())
 			{
 				QFileInfo fi(doc.DocName);
 				docTitle = fi.fileName();
 			}
-			docTitle += "  "+ tr("Page:")+" "+tmp.setNum(PgNr+1);
+			docTitle += "  "+ tr("Page:")+" "+ QString::number(PgNr+1);
 			PutPage("/"+spotMapReg["Register"].ResName+" cs 1 scn\n");
 			PutPage("q\n");
 			PutPage("1 0 0 1 "+FToStr(startX)+" 6 cm\n");
-			PutPage("BT\n");
-			PutPage("/"+StdFonts["/Helvetica"]+" 7 Tf\n");
-			PutPage(EncString("("+docTitle+")",ObjCounter)+" Tj\nET\n");
+			painter1.addText( QPointF(0.0,0.0), infoFont, docTitle );
+			textPath.fromQPainterPath(painter1);
+			PutPage(SetClipPathArray(&textPath, true));
+			PutPage("h\nf*\n");
 			PutPage("Q\n");
+			QDate d = QDate::currentDate();
+			QString docDate = tr("Date:")+" "+d.toString(Qt::TextDate);
 			PutPage("q\n");
 			PutPage("1 0 0 1 "+FToStr(maxBoxX / 2.0 + 20.0)+" 6 cm\n");
-			PutPage("BT\n");
-			PutPage("/"+StdFonts["/Helvetica"]+" 7 Tf\n");
-			QDate d = QDate::currentDate();
-			PutPage(EncString("("+ tr("Date:")+" "+d.toString(Qt::TextDate)+")",ObjCounter)+" Tj\nET\n");
+			painter2.addText( QPointF(0.0,0.0), infoFont, docDate );
+			textPath.fromQPainterPath(painter2);
+			PutPage(SetClipPathArray(&textPath, true));
+			PutPage("h\nf*\n");
 			PutPage("Q\n");
 		}
 	}

jghali

2008-01-14 11:05

administrator   ~0018568

Reminder sent to: fschmid

I uploaded a patch which proceed by simply outlining the doc info text.

Issue History

Date Modified Username Field Change
2007-09-17 12:49 tobiashagberg New Issue
2007-09-18 17:44 timpul Note Added: 0017314
2007-09-18 17:45 timpul File Added: Helveticaembed.gif
2007-09-18 18:40 tobiashagberg Note Added: 0017315
2007-09-18 18:41 tobiashagberg Note Edited: 0017315
2007-09-18 18:43 tobiashagberg Note Edited: 0017315
2007-09-18 18:48 tobiashagberg Note Added: 0017316
2007-09-18 18:50 tobiashagberg Note Edited: 0017316
2007-09-18 21:38 plinnell Note Added: 0017319
2007-09-19 13:47 tobiashagberg Note Added: 0017323
2007-09-19 16:42 timpul Note Added: 0017324
2007-09-19 17:45 tobiashagberg Note Added: 0017325
2007-09-19 18:10 tobiashagberg Note Edited: 0017325
2007-09-19 22:17 plinnell Note Added: 0017329
2007-09-19 22:17 plinnell Assigned To => fschmid
2007-09-19 22:17 plinnell Severity minor => major
2007-09-19 22:17 plinnell Status new => assigned
2007-09-19 22:37 plinnell Note Added: 0017330
2007-09-20 07:18 tobiashagberg Note Added: 0017332
2007-09-20 07:19 tobiashagberg File Added: scribus-adobereader.png
2007-09-20 07:19 tobiashagberg File Added: scribus-evince.png
2007-09-20 07:20 tobiashagberg Note Edited: 0017332
2007-09-20 07:21 tobiashagberg Note Edited: 0017332
2007-09-20 07:26 tobiashagberg Note Edited: 0017332
2007-09-20 14:33 plinnell Note Added: 0017335
2007-09-27 19:27 christoph_s Relationship added child of 0005693
2007-12-20 22:52 cbradney Target Version => 1.3.5svn
2007-12-26 17:02 cbradney Target Version 1.3.5svn => 1.3.5
2008-01-08 00:18 jghali Relationship added has duplicate 0006637
2008-01-14 11:02 jghali File Added: 6227_pdflib_outline_docinfo.patch
2008-01-14 11:05 jghali Note Added: 0018568
2008-01-14 18:30 fschmid Status assigned => resolved
2008-01-14 18:30 fschmid Fixed in Version => 1.3.5svn
2008-01-14 18:30 fschmid Resolution open => fixed
2008-01-14 20:59 cbradney Status resolved => closed