IRC Logs

Log of #ghostscript at irc.freenode.net.

Search:
 <<<Back 1 day (to 2011/11/17)2011/11/18 
mvrhel henrys: so wts has been removed. now on to fix my screw up with the jpeg images, then tackle this simple CMM00:57.59 
Robin_Watts It's not really a simple CMM, right?00:58.23 
mvrhel no00:58.31 
  it is more of a short circuit when we have "standard" rgb, gray and cmyk color spaces00:58.49 
Robin_Watts It will sit alongside whatever CMM is used, and be used to short circuit the simple ones in some cases.00:58.54 
  Right. Just checking I was keeping up :)00:58.58 
mvrhel to replace the MLUT and link with a dumb conversion00:59.02 
  yes00:59.07 
Robin_Watts Is this something that might be usefully done as PART of lcms ?00:59.24 
mvrhel in a way it would be nice to have that *in* the CMM00:59.43 
Robin_Watts indeed.01:00.08 
mvrhel but we do have an interface to the CMM where we should be able to intercept this. essentially when the link request comes in for one of these will will not really request one from the CMM but likely return an address to a conversion function01:01.15 
  or something01:01.28 
  and then use that01:01.33 
Robin_Watts fair enough.01:01.54 
mvrhel the thing is how best to tell if it was a real link address when the conversion is requested using that link01:02.02 
  or if it was the sleazy conversion function01:02.14 
  it would be nice to be able to avoid doing a check01:02.22 
Robin_Watts I don't know the interface enough to comment really.01:02.31 
mvrhel I guess if I abstracted the actual call one more level that would work01:02.49 
  I need to think about it a bit01:02.58 
Robin_Watts The gs side of the interface must see us asking for "give me a handle for a link from this profile".01:03.16 
mvrhel off to fix my jpeg screw up now01:03.16 
  yes01:03.23 
Robin_Watts and currently that dives straight into whatever cms we have picked.01:03.44 
mvrhel we will in this case, add in the check to see if it is a default RGB, CMYK ,Gray01:04.12 
Robin_Watts If we had a way of passing a profile that was a dumb one, could we get the handle from somewhere else?01:04.13 
mvrhel and if the use_dumb flag option is enabled01:04.26 
  so the profile is not dumb. But the handle to the link of the profiles will be dumb or not dumb01:04.51 
Robin_Watts i.e. have the gs <-> cms layer arbitrate between several cms, one of which is the dumb one.01:04.54 
  Right.01:05.04 
mvrhel to gs, life will appear as it always has01:05.16 
Robin_Watts But then might we have problems with wanting to convert from dumb to not dumb ?01:05.21 
mvrhel if someone enables, dumb then that is what they will get. It is all source driven01:05.42 
  if the source is ICC based, we will return a real link01:05.54 
  from lcm01:05.58 
  lcms01:06.00 
Robin_Watts ok. I'll shut up; it's too late for me to be following this properly :/01:06.18 
mvrhel if the source was DeviceRGB, they will get a fake link01:06.20 
  I guess I should write this up too01:06.31 
Robin_Watts night.01:06.54 
henrys sorry I should have done that as a branch so it would have been tested as one commit01:06.56 
mvrhel basically if the source is DeviceRGB, DeviceGray, or DeviceCMYK we will return a fake link01:06.59 
  tested what?01:07.10 
  oh01:07.23 
  4 commits at once01:07.30 
  no worries. I am done for the night01:07.47 
  or at least for a bit01:07.52 
  off to the kids school for a pot luck01:07.59 
henrys have fun01:08.05 
mvrhel thanks01:08.20 
  good night Robin_Watts01:08.27 
  henrys: I need to see what bugs are WTS and close those01:09.01 
henrys great to have that done.01:11.56 
  gotta get my battlestar galactica fix!01:12.43 
mvrhel henrys: I just finished the series last week01:15.19 
  I had been watching it on netflix for the past 6 months or so01:15.38 
  pretty cool01:15.42 
kens ping chrisl08:54.35 
chrisl kens: pong08:57.28 
kens chrisl I'm staring at a TT font and I can't see a problem, could you spare some time to altk through it ?08:57.51 
chrisl Sure08:58.04 
kens I'll mail you some files, just a moment.08:58.15 
  Drat should have zipped it, I forgot the TT font decoded would be buig08:59.57 
chrisl OTOH, it might stop gmail sodding about with it!09:00.28 
kens Yeah, that's true as well09:00.45 
  lwet me know when you get the files09:01.13 
kens thinks his typing is especially bad this morning09:01.28 
chrisl They're here, I'm fighting with text editor......09:01.53 
kens Let me explain a little09:02.03 
  the file started life as a PDF file, then was converted (by some other app) to PS, then we converted it to PDF.09:02.26 
  That's what reduced2.pdf is. Except I cut most of it out09:02.40 
  THat then gets converted to out.ps09:02.53 
  If you open reduced2.pdf in Acrobat or GS you'll se it is OK09:03.06 
  If you open out.ps you'll see the single glyph is replaced by a custom notdef09:03.26 
  I extracted and dumped the font, but I can't see where the problem is.09:03.56 
  THe glyph in the PS file is 0x02, the CMAP subtable maps 02 -> 25809:04.14 
  258 is a glyph with contours (the only one other than .notdef which exists)09:04.32 
  So I'm puzzled as to why we are seeing a .notdef in the output09:04.51 
chrisl I take it all the "No contours" glyphs are expected?09:05.15 
kens Yes, its our usual crap TT output09:05.26 
  I believe this is valid.09:05.47 
  Its also why some of the tables are huge.09:06.09 
  What's really weird is that it *does* pick up the custom .notdef glyph, so it can obviously parse the font.09:06.53 
chrisl I'm (accidentally) looking at the font in fontforge, and it doesn't show any glyph at index 258 (or any glyphs at all, for that matter)09:08.09 
kens Though I just discovered that renaming the font file to .tttf won't make Windows open it, it says its not a valid font file09:08.27 
  Well, with FontForge as well, that suggets a real problem.09:08.40 
  I'll try FontValidator, but I *know* it'll complain a lot09:09.04 
chrisl I'm wary about fontforge, but yes, it does suggest an issue combined with Windows. I'll try the freetype tools on it09:09.32 
kens Good idea09:09.41 
  Lots of checksum errors and recommended table missing warnings09:11.06 
chrisl So, ftview shows "a" at index 258, which is what we expect - but I *know* freetype is more liberal than most consumers09:11.12 
kens complains about the OS/2 version number09:11.19 
  ANd a bynch of other metrics in there09:11.34 
  Complains that teh CMAP table doesn't contain any Apple subtables09:11.55 
  Degenerate contours warning09:12.14 
chrisl Yeh, it only contains a 3.0 cmap, no others09:12.21 
kens But that's not an error09:12.30 
chrisl Not for a Truetype font, but it depends on what the ps2write ttf reader expects09:13.08 
kens loca errors 'entry poitns outside the glyf range'09:13.10 
  I think the ps2write reader will pass it on to GS09:13.30 
  name table complaints and maxp complaints09:13.57 
  I'm sure these are due to copying the original font tables09:14.15 
chrisl Surely it needs to do more that just pass it on, it presumably needs to emulate the PDF cmap table selection?09:14.36 
kens I don't think so. We use the CMAP subtable to do character code to GID.09:15.09 
  In this case the character code is 0x2, and the CMAP says 0x2->25809:15.36 
chrisl So, does the text get re-encoded to match?09:15.50 
kens Yes, it should, but in this case it doesn't have to, it was already done for hte PDF step09:16.18 
  Well there's nothing obviously wrong from the Font Validator.09:16.44 
  Well, there's plenty that's wrong, but nothing obviously causing a problem.09:17.02 
chrisl In the PDF, the fonts are all labeled as symbolic09:18.02 
kens Yes, because we use a custom encoding09:18.17 
  I suppose the next thing is to break in FreeType and see which GID its trying too use.09:19.09 
chrisl In the Postscript?09:19.33 
kens When running the PostScript, yes.09:19.43 
  If its trying to use the wrong GID tehn I'll know that I need to looko at the mapping09:20.04 
  Any ideas on a good place to break ?09:20.12 
chrisl Just checking now - I can never remember the names of the functions!09:21.01 
kens get_fapi_glyph_data ?09:21.10 
chrisl yes09:21.26 
kens Huh ?09:22.11 
  Didn't break.....09:22.15 
  But rendered the glyph....09:22.25 
chrisl It did for me09:22.29 
kens Must need a rebuild09:22.32 
  Yes, building now09:22.52 
chrisl Hmm, seems to be getting in there with index 009:23.39 
kens Well, that would explain why its showing a .notdef!09:23.54 
  Looks like VS has decided it needs a complete rebuild :-(09:24.18 
chrisl I don't know *why* though09:24.31 
kens I guess it may be time to start trying to understand the ps2write prolog. :-(09:24.57 
  Yes, I see a_index is 009:25.20 
chrisl But the charcode passed into load_glyph is 0, so it is coming from us.....09:26.10 
kens Yes, I'm sure that is the case. I'm just trying to track down which show variant its using.09:26.43 
  awidthshow it seems09:28.25 
  Hmm....09:29.01 
  The character code seems to be 0x20 which is not right09:29.10 
chrisl Yep, FAPI gets a charcode of 209:30.06 
kens well that is the code I woudl expect09:30.23 
chrisl Oops, phone - back in a sec.......09:30.47 
kens No problem09:30.53 
  Duh! The code I'm looking at is the 'space' code for the awidthshopw, idiot!09:31.32 
  Yes, character code is 0x0209:33.25 
chrisl FAPI doesn't seem to find the glyph name in the CharStrings dict......09:33.59 
kens I guess that's down to the type42'ness09:34.20 
  It should build a CharStrings dict with teh character code mapping.09:34.34 
chrisl Yes, the comment in zfapi.c says specifically for type42 we shouldn't use the cmap table09:35.04 
kens OK, well maybe that makes sense.09:35.18 
  The CharString dict is supposed to hold a bunch of numbers09:35.30 
  Looks like MakeType42 is where I need to be looking.09:35.59 
chrisl Yep, I would think so - unless FAPI is wrong.... :-)09:36.22 
kens No, I'm sure FAPI is correct. My memory of type42 is hazy but that sounds right09:36.43 
  Just trying to find out how we get to MakeType4209:36.56 
chrisl My memory of type42 is always hazy - another unholy mess from Adobe :-(09:37.19 
kens Oh yes ;-)09:37.26 
  There's some debug code to dump stuff but it doesn't dump the CharString dict.09:39.04 
chrisl Oh, weird, the CharStrings dictionary contains only one entry: /.notdef 25809:39.21 
kens OK thanks for the help chrisl, I'll go and poke the PostScript a bit.09:39.25 
  Well that's plain wrong :-)09:39.38 
chrisl Just thinkin that myself......09:40.01 
kens I wonder if that even gets used, I thought .notdef was GID 0 by definition09:40.51 
chrisl Yes, but remember, there's all kinds of fallback "logic" in there for crazy crap like this09:41.38 
kens Yes.09:41.44 
  The prolog parses the TT tables and builds the CharStrigns09:41.58 
  Its got to be that which is failing09:42.04 
  I wonder if its trying to parse the POST table. It exists but has no entries....09:42.44 
  Well its using the 3,0 CMAP and writing what appears to be a silly CharStrings from it09:45.21 
chrisl Indeed, yes. Weird.....09:46.10 
kens Going to have to go read the type42 spec to see what this ought to contain09:46.45 
  The lack of a POST table might be the problem09:46.56 
  Well it looks like /.notdef must be present, other glyphs can be identified by names or integers09:48.34 
  If they are integers they map directly to loca entries09:48.56 
  Oops, no they *must* be names.09:49.17 
  If the value is an integer then its a loca table index09:49.35 
chrisl Yes, but IIRC they can be names like /2 09:49.43 
kens Yes, any legal name is OK09:49.53 
  Oh god, I'm going to have to read this prolog :-(09:50.42 
chrisl It's horrid, isn't it :-(09:50.59 
kens I'm going to use the original which has a few comments in it I think.09:51.17 
chrisl BTW, adding a check for post having actual entries (as well as just existing) doesn't seem to help09:51.59 
kens Yeah, I'm actually going to have to try and understand what its doing.09:52.20 
chrisl Okay, give me a shout if you need a sanity check..............09:55.42 
kens Thanks, I suspect sanity will be gone by the time I finish this09:55.59 
  It kind of looks like its trying to pcik names out of the POST table still09:56.16 
chrisl My sanity is perfectly safe and sound - I keep it in a cupboard in the kitchen because I rarely use it.....09:56.59 
  Yeh, that's why I thought it might just be a case of checking the POST table actually contained something, as well as being there - but my quick hack made no difference09:57.50 
kens It gets looked at in more than one place :_(09:58.03 
  But its not that simple apparently, sadly09:58.20 
chrisl I was looking at ComposeCharStrings09:58.58 
kens That's oone of the places...09:59.13 
  At least the Encoding looks right.10:00.46 
Robin_Watts ok. I'm about to break the cluster again...10:15.49 
  ooh. cluster run got to the end...10:48.37 
kens progress10:48.56 
Robin_Watts Now to see how many diffs...10:49.10 
  2113 regression files have started producing errors.10:50.33 
chrisl Robin_Watts: the cluster uses a pipe to dump output through md5sum, does that work (correctly) on Windows?11:03.15 
Robin_Watts chrisl: cygwin, yeah.11:07.48 
chrisl But you're not using a cygwin GS build11:08.07 
Robin_Watts indeed.11:08.15 
chrisl I don't mean it does "gs ... | md5sum", I mean it uses the code in gdevpipe.c11:08.46 
Robin_Watts Everything runs under cygwin - it's just that instead of a make invocation, I have an nmake one.11:08.48 
  oh, right.11:09.17 
  I'll find out in a mo when I go diggign.11:09.25 
chrisl I *think* it is still in there, but there may be functional differences in the underlying capabilities11:09.58 
Robin_Watts chrisl: Yeah, it looks like it's the -sOutputFile='| md5sum >>.\temp\tests__eps__big-multi-source.eps.plank.300.1.md5' that's causing the problem. good catch!11:47.48 
chrisl That could be a bit of a pain :-(11:48.18 
Robin_Watts In theory I can rewrite the command... instead of going to that, I can go to tempout and then do md5sum tempout >> ...11:49.16 
  Morning tor811:50.24 
  I redid the patches yesterday11:50.31 
chrisl Robin_Watts: the reason it uses the pipe, I think, if for easy handling of multi-file output11:51.47 
Robin_Watts oh, gawd, yes.11:52.00 
tor8 Robin_Watts: great!11:53.41 
  Robin_Watts: pushed11:56.21 
Robin_Watts tor8: cool. I'll try to run through some more of his bugs next week.11:56.44 
  chrisl: Ha. It doesn't like "| md5sum...", but seems happier with "|md5sum..." :)12:01.14 
kens werid12:01.28 
  weird12:01.31 
chrisl Robin_Watts: well, that is good, but strange.....12:02.14 
Robin_Watts and it doesn't like the redirection12:03.44 
kens chrisl I think my problem is that the array we get out of CMAP is wrong.12:08.19 
  It comes out as [258] whciih puts 258 at index 0.12:08.37 
  index 0 should be the .notdef of course12:08.47 
  and 258 shoudl be at location '2' of the array12:08.59 
  I wonder if the CMAP thing can't cope with missing values.12:09.14 
chrisl Yes, that's what I thought, but I couldn't immediately see why12:09.28 
kens I'd expect something lik e[0 0 258] for the CMAP12:09.41 
  Or maybe [0 -1 258] which would allow us to spot -1 as a missing entry and skip it12:10.08 
  Ah, it looks like hte CMAP parsing code only considers the total number of glyphs in the CMAP, not their character codes. That seems wrong to me, it'll only work for CMAPs with no missing entries.12:16.53 
  And I think the point of a format 4 CMAP is so that it *can* have missing entries....12:17.09 
kens goes to read TT spec12:17.20 
chrisl Yes, format 4 is one of the segmented ones12:17.29 
kens THat's what I thought, so the CMAP decoding in the prolog for type 4 is just wrong.12:17.47 
  It reads the total number of codes, makes an array that big, then reads each code in turn into that array.12:18.07 
  WHich means that unless the CMAP starts at 0 and is contiguous (in which case, why a format 4 ?) the character code to GID mapping will be incorrect.12:18.39 
  I'm guessing we don't often see format 4 CMAP subtables.12:18.50 
  But pdfwrite emits them a lot.12:18.57 
  Now I have to figure out how to fix it.12:19.10 
chrisl Format 4 is pretty common, these days. The code to handle them for "normal" use is in gs_ttf.ps - look for "cmapformats"12:21.01 
kens Its the prolog one I have to fix....12:21.30 
chrisl Yes, but I thought having a postscript implementation might give you some hints about fixing another PS implemenation12:21.59 
kens Well... THe problem is that the array I generate has to conform to the consumer, later in teh prolog ;-)12:22.21 
  I may have to fix both....12:22.30 
chrisl An array is probably not going to work, given the length limitation12:22.45 
  Oh, this can't be for CIDFonts, so you might be okay12:23.51 
kens I hope so :-)12:24.04 
  But since its our own output, I *know* it can't be a CIDFOnt :-)12:24.20 
Robin_Watts nmake can't do parallel builds like make can.12:24.23 
chrisl I know, nmake is pretty crap on that front :-(12:24.45 
Robin_Watts Which means any windows cluster node is going to be at a disadvantage to linux ones in terms of how long til it gets to start doing jobs.12:25.01 
  We could build change run.pl to build products in parallel though (gs in parallel with pcl etc)12:26.08 
chrisl I thought Marcos tried that and found some issues with it12:27.50 
Robin_Watts marcos uses make -j12, but it doesn't always complete.12:28.23 
  So he does: make -j12 ; make;12:28.31 
  where the second make 'mops up' after any problem the first parallel one had.12:28.52 
chrisl No, I thought he said he'd experimented with building the products in parallel, but had found problems12:29.04 
Robin_Watts we don't write back into the source dirs do we ?12:29.43 
chrisl When we run some of the configure scripts we do, yes12:30.17 
Robin_Watts still 2000 odd errors. bah.12:45.24 
  oh, I hate perl.12:47.26 
  3400 errors :(13:36.09 
kens That's worse....13:36.22 
  Wrong direction!13:36.29 
Robin_Watts indeed.13:38.10 
kens Oh dear, this parsing code is really crap it only seems to parse the first segment of a format 4 CMAP13:55.29 
  There's also a problem that the character code in teh CMAP is 0xf002, not 0x02/ I'm sure I've seen that before somewhere, but I don;t remember what its supposed to mean13:58.06 
chrisl It's in the PDF spec - using 3.0 cmap, you may have to offset the character by 255.14:01.35 
kens Oh, crap.14:01.47 
chrisl Yes, very :-(14:02.19 
kens THere's code in teh table readin:14:02.24 
  % Hack for fonts that have only 0x0000 and 0xf000 ranges14:02.24 
  %dup 16#e000 ge { 255 and } if14:02.24 
  % the previous line is obstructive to CJK fonts, so it was removedg to mask off the top bits, but its been removed '14:02.24 
  Oops, merged a couple of lines there, hope you cna make sense of it.14:02.57 
chrisl I *think* the code in gs_ttf.ps still does that......14:03.43 
kens Do you know where the stuff in the PDF reference is ?14:03.43 
chrisl Page 43214:03.55 
kens Thanks14:03.59 
chrisl I happen to have had my head in there, too, this week :-(14:04.24 
kens Umm, that's transparency in my copy14:04.24 
chrisl Er, okay, Chapter 514:04.54 
kens Well I was in 5.5.2 but couldn't see it there14:05.23 
chrisl Section 5.5.514:05.23 
kens Of course, encoding not 'TrueType fonts'14:05.44 
chrisl Exactly, why make it not confusing.......14:06.05 
kens Weird, still can't find it. Talks about 3,1 and 1,0 tables, cna't find the 3,014:07.45 
chrisl The very last paragraph, just before composite fonts14:08.17 
kens "If a character cannot be mapped in any of the ways described above, the resultsare implementation-dependent. "14:08.36 
  Which version of the spec are you looking at ?14:08.47 
chrisl 1,714:08.52 
kens AH, I seem to have an old one here.14:09.00 
chrisl ahem 1.714:09.04 
kens No wonder the pages don't match14:09.09 
  Fnally.14:10.03 
  Thanks for the reference.14:10.09 
chrisl I hope it helps you more than it did me - it doesn't cover the case I was working on :-(14:10.31 
kens Its a bit worrying I have to say.14:10.44 
  I'm wondering why we even write it that way.14:10.56 
  In fact it looks liek we are doing ti wrong when emitting the font for ps2write, and maybe pdfwrite too.14:11.34 
  But I'm nervous to go chaning it, this stuff is incredibly fragile14:11.46 
chrisl pdfwrite just dumps the font, doesn't it?14:12.26 
kens No, it makes a subset14:12.37 
chrisl OKay, but it emits an entire (slightly duff) TTF14:13.12 
Robin_Watts OK, so testing a device that's not included by default in the windows build is probably not smart :)14:13.17 
kens chrisl, so does ps2write :-)14:13.25 
  Robin_Watts : not going to work well ;-)14:13.36 
chrisl kens: yes, but does the pdfwrite output work?14:14.07 
kens yes14:14.19 
  At least, I think so, I'd better check14:14.42 
chrisl So, whilst there may be issues there, it's probably not the cause of *this* problem.14:14.55 
kens Correct, but I need to solve it to get the CharStrings array ordering correct.14:15.19 
  Just checked, the pdfwrite otuput is OK.14:16.02 
  I suspect that it adds the 0xf000 to make it compatible with teh PDF spec.14:16.23 
  In which case, since I know its for ps2write, I can stop it doign that.14:16.36 
  Need to look into it.14:16.43 
chrisl Possibly. Wouldn't it be better for ps2write to to subtract the offset, though?14:17.22 
kens I'm concerned by the comment about it not working properly with CJKV fotns.14:17.43 
  " % the previous line is obstructive to CJK fonts, so it was removed"14:17.57 
  Which is where it *used* to subtract the offset.....14:18.16 
chrisl I wouldn't expect CJK fonts to use a 3.0 cmap14:18.51 
kens We don't know its a 3,0 map here, just that its a format $ CMAP14:19.12 
  format 414:19.16 
  We use the smae routines no matter what the platform and language14:19.31 
chrisl Well, I think it needs to know - does adding that line back in make it work?14:20.09 
kens No, because it still generates an array with only one entry at position 0, instead of a 3 entry array with positions 0 & 1 being '0' and position 2 being 25814:20.49 
  Which would then properly build a CharStrings dicitonary14:21.11 
chrisl Okay, so more to it, then.......14:21.32 
kens Yeah, the whole thing is a mess, I doubt this ever really worked.14:21.48 
chrisl I have a queasy feeling it would have been easier to dump a proper type 42 font from ps2write, rejig a TTF in the Postscript <sigh>14:23.05 
kens Yes, and that's something I need to do anyway one day.14:23.24 
  Well, rewrite the TTF output at least14:23.40 
chrisl Well, the thing is, once the TTF is broken into all the tables and stuff, emitting a type 42 wouldn't be very hard.14:24.28 
chrisl needs caffeine.......14:26.27 
Robin_Watts I cannot see how the pam device is included in ANY build, and yet it's there in the cluster binaries.14:27.33 
  oh, I see.14:29.21 
  chrisl: Your last mail to Kanazawa-san...14:42.59 
  Adding () to an expression solves a problem.14:43.11 
  oh, I see, it's the a & b ==c that was the problem.14:43.58 
chrisl Robin_Watts: that was part of it, yes, but there was something else with the second half of the expression , too, which adding the parentheses fixed, too14:45.52 
  It was difficult to fathom, because VC++ was having problems showing the values of the variables, and doesn't expand the macros.....14:46.43 
Robin_Watts It's always best to add parens in my view.14:48.04 
  (if you have to think about it when reading it back, then you've failed the 'readable code' test)14:48.22 
chrisl Well, to me, that was pretty clear - it wasn't a complicated statement, and the order precedence should be quite clear14:48.59 
Robin_Watts Well, a & b == c is NOT the same as (a & b) == c (as == binds tighter than &)14:50.00 
  but I don't see how any other of the parens can have made a difference/14:50.47 
  (unless the constants there are particularly poor macros)14:51.13 
chrisl No, they are just static values14:51.29 
  Robin_Watts: so, gcc gets the precedence wrong, then14:53.12 
Robin_Watts FC_FONTTYPE_MASK == FC_FCO_TYPE14:53.42 
chrisl Oh, I yes, I see - so why on earth did VC get it wrong? :-(14:54.35 
Robin_Watts sorry, I got distracted and hit return too early.14:55.08 
chrisl No, I get it - I forgot that, in this case d->font_type == FC_FCO_TYPE (none of the other flags are set)14:56.16 
Robin_Watts Right, but a & b == c calculates a & (b ==c)14:57.12 
  so (b==c) will either be 0 or 1 depending on the values of those constants.14:57.28 
  hence the test will be doing a & 1 or a & 0.14:57.41 
  "a & 0 && anything" is always false.14:58.00 
chrisl Yeh, actually, gcc is getting it right, because at some point, I changed our canonical code to: d->font_type == FC_FCO_TYPE && r->fc.ExtndFlags & EF_SUBSTHOLLOWBOX_TYPE14:59.06 
  Robin_Watts: I was a bit confused, looking at that, because VC debugger should d->font_type and r->fc.ExndFlags as completely spurious values (I think it gets confused by the symbol clash workaround)15:03.00 
  s/should/showed15:03.15 
shnur hi! could you give me some pointers now how to modify mupdf/pdfdraw so that pdfdraw outs everything it knows about characters, their positions, fonts etc ? What files and variables to look at? 15:05.37 
kens use -ttt ?15:06.06 
  Or is that pdfextrcat15:06.14 
shnur in a form that can be processed with regexps. -ttt does not output everything, i think; e.g. mupdf knows font families and pdfdraw -ttt does not output them15:07.16 
kens I believe it should outptu the font names15:07.34 
  I thought that -tt (xml version) outptus everything there is to know about text. But I could be wrong15:07.56 
  In any event, pdfdraw -tt wuld seem like a good place to start15:08.09 
Robin_Watts shnur: There is a 'text' branch for mupdf.15:11.11 
shnur i do not think it is not everytihg (and I got this impression when asked about this a few weeks ago). For example, a question: it gives font as CLHFMI+TimesNewRomanPSMT ; can I recover a verbal discription of the font from this? 15:11.25 
Robin_Watts That has the text extraction reworked to be better.15:11.29 
  shnur: Yes, we discussed this a few weeks ago.15:11.45 
shnur Robit_Watts: thanks for advice the last time. Yes, I am looking at that branch15:11.47 
kens shnur you can't 'recover' a verbal description of the font, because there is no such information.15:11.58 
Robin_Watts What we told you then was "That's all the information that is included in the file".15:12.11 
  There is no "verbal description of the font" to be had.15:12.20 
kens You cna get some aspects of the font from the font descriptor15:12.24 
  If the font is typ[e 1 then you *might* get some additionjal information by parsing the font dicitonary15:13.01 
shnur how do i access font descriptor from the name CLHFMI+TimesNewRomanPSMT ? 15:15.12 
kens You don't access it from the name, you access it from the object ID. Once again I suggest you look at how pdfdraw extracts the information15:15.44 
shnur ok, thanks! I'll look then at the sources of pdfdraw, particularly fitz/dev_text.c fz_debug_text_span.* , and see whether i can get it to output weight, italic, familiy name etc.15:22.58 
Robin_Watts mvrhel: ping16:23.05 
  mvrhel: Just having a look at 692512 - could you attach the file to the bug please?16:23.29 
  S'OK. I've regenerated it here.16:31.38 
mvrhel good morning16:44.57 
  Robin_Watts: so you have it doing the problem?16:45.14 
Robin_Watts I can see the problem in the output.16:45.31 
  It goes away if I remove the skew.16:45.39 
mvrhel oh is there a skew in that one?16:45.52 
  hold on let me get you this other file16:46.01 
  we are talking about the blue stripes right?16:46.17 
Robin_Watts red stripes :)16:46.36 
mvrhel ok. wrong picture16:46.45 
  hold on16:46.48 
Robin_Watts Well, the red stripes are wrong too :)16:46.56 
mvrhel ok well the blue stripes that I just sent you are not skewed and maybe solving that issue will fix the other16:49.07 
Robin_Watts ok, ta.16:49.19 
  It's amazing how fast all this stuff can fall out of my head... need to look back the git history.16:49.39 
mvrhel that happens to me too16:49.50 
Robin_Watts OK, so this case doesn't call the code I changed before :)16:51.41 
mvrhel oh16:51.49 
  how is that16:51.54 
Robin_Watts oh, yes it does, sorry. finger trouble16:52.30 
  OK, my adjustment only kicks in if it's an axis aligned thing. hence the skew stops it working.16:55.55 
  I can fix that.16:55.58 
  Let's look at your file...16:56.03 
mvrhel good deal16:57.03 
Robin_Watts ok, yours is a different problem.17:13.34 
  Let me fix the skew one first, cos I understand that :)17:13.42 
mvrhel sigh. what secret set of options do I need to include in a command line to get gs to render the whole PS file in some of the CET files. I have all the options that exist on the command line from the cluster I think17:21.16 
  e.g. -dJOBSERVER etc17:21.22 
  but gs just stops17:21.48 
Robin_Watts If the file ends in .PS (caps) then the cluster includes %rom%gscet.ps too (or something like that).17:22.32 
  but all that does is set filladjust to 0.517:22.40 
mvrhel oh17:23.24 
  well that would not make it hang17:23.45 
  I have run into this before and I forget what I need to do17:23.58 
  I thought chrisl gave me the secret option last time17:25.49 
  and I wrote it down someplace....17:26.00 
Robin_Watts mvrhel: In the regression dashboard, next to mvrhel bmpcmp, click on the +17:26.45 
mvrhel yes. I looked at the command in there17:26.54 
Robin_Watts right.17:27.04 
  Woo Hoo!17:31.58 
  http://ghostscript.com/cgi-bin/clustermonitor.cgi?report=robin17:32.04 
  Successful cluster run with a windows cluster node.17:32.25 
mvrhel cool17:32.58 
  alexcher: do you have any idea what option I might need to run the file 119-28.ps all the way through?17:36.01 
Robin_Watts In what way isn't it running all the way through?17:39.45 
  Does it not output a page? Or is it just that it stops at the command prompt ?17:40.14 
mvrhel it just sits there at StartOneTest17:45.15 
  just talked to ray_laptop17:45.23 
  apparently some of these files want to read from stdin17:45.36 
  so you have to read gs_cet.ps and then pipe in the file 17:45.58 
chrisl mvrhel: cluster jobs use an option which always worries me: -dClusterJob17:52.50 
mvrhel I removed that onr17:53.00 
  one17:53.02 
chrisl Most of the rest seem to have been removed, it used to do: -dNOOUTERSAVE -dJOBSERVER -c false 0 startjob pop -f"17:53.56 
mvrhel just the single quote?17:54.43 
chrisl Er, no sorry, no quotes 17:55.09 
  -dNOOUTERSAVE -dJOBSERVER -c false 0 startjob pop -f17:55.13 
mvrhel hmm it still hangs17:56.15 
  are you able to run the file 119-28.ps?17:56.27 
  though completion chrisl?17:56.37 
  it is in the private/compare17:57.06 
  folder17:57.08 
chrisl Oh, I remember now: you need to do: ./gs ... - < 119-28.ps17:57.09 
  So that GS reads from stdin17:57.21 
mvrhel hmm I wonder if that will work on the command argument line in visual studio17:57.47 
  iirc that is a problem17:57.54 
chrisl So, on my system: ./gs -sDEVICE=pnmraw -r100 -o stuff%03d.pnm - < 119-28.ps runs to completion17:58.05 
  Hmm, I don't know about VS - I can try it, if you like?17:58.55 
mvrhel I think VS2008 is broken with respect to having stdin and stout direction in the Command Arguments. 18:00.17 
  with is ridiculous 18:00.38 
chrisl Could you run it from a batch file, and redirect the command that the debugger should run?18:01.06 
Robin_Watts VS2005 works fine like that.18:01.06 
mvrhel so does VS201018:01.17 
Robin_Watts gs/debugbin/gswin32c.exe - < ../ghostpcl/tests_private/ps/ps3fts/119-28.ps-XFAIL runs to completion for me.18:01.29 
  ah, so it's a 2008 specific gotcha?18:01.43 
mvrhel We need to get the team edition of 2010 at some point18:02.57 
Robin_Watts http://connect.microsoft.com/VisualStudio/feedback/details/333493/cant-redirect-stdin-stdout-for-debugging18:03.40 
  See the workarounds section.18:03.46 
mvrhel oh cool18:04.21 
  let me do that18:04.24 
chrisl is glad I stuck with 2005 ......18:04.57 
alexcher mvrhel: what's the bug number for the file 119-28.ps18:05.03 
Robin_Watts I have 2005/2008 and 2010 express installed on here.18:05.17 
  but I tend to stick with 2005.18:05.26 
mvrhel it is not a bug number. it is me fixing an issue that I have in embedding icc profiles in the JPEG output18:05.38 
Robin_Watts stackoverflow: " this is a bug with VS 2008 and it was fixed in VS 2008 SP1."18:07.25 
alexcher mvrhel: OK, I'm looking.18:07.27 
mvrhel alexcher: no. don't worry about anything now18:08.52 
  I wonder why the might windows bi weekly updater never gave me the update of VS 2008 SP118:10.29 
  s/might/mighty/18:10.56 
  it would have been nice to get an actual useful update18:11.16 
chrisl mvrhel: There you go, expecting software to make sense - has working on Ghostscript taught you *nothing*? ;-)18:13.01 
mvrhel ")18:13.07 
  :)18:13.09 
chrisl I have to say, 119-28.ps is a very poor test job - another QL test that makes *totally* invalid assumptions......18:14.22 
alexcher mvrhel: the test is using %stdin device instead of currentfile. So it has to be run fron standard input.18:16.03 
mvrhel alexcher: yes. 18:16.14 
  we got that all figured out thanks. just updating my visual studio now18:16.35 
chrisl oh, that's my guest arriving - I better sign off. Have a good weekend!18:19.18 
Robin_Watts TTOTD: When hunting for a bug that occurs at 600dpi, don't use -r7218:21.03 
mvrhel Robin_Watts: good idea. I am probably going to be out for a bit today. Its my birthday and I need to go get some stuff at the ski shop. Slopes open today and tomorrow around here18:21.45 
Robin_Watts yes, I meant to say Happy Birthday, but I was on the phone when I remembered :)18:22.08 
mvrhel thanks18:22.12 
Robin_Watts So, Happy Birthday!18:22.14 
mvrhel Robin_Watts: hey that fixed the issue18:26.55 
  now < works18:27.00 
Robin_Watts excellent.18:27.05 
mvrhel and I see where the issue is18:27.15 
  ok. on that note I am heading off for a bit18:27.27 
  ttyl18:27.29 
Robin_Watts have a good one18:27.44 
  Well, this is odd.18:31.31 
  If I remove all but 3 of the parallel lines, I can see a gap between 2 of them.18:32.10 
  but I can't get it to happen with 2 of them.18:32.48 
  It's the use of stroke_adjustment that cocks it up.18:46.40 
  mvrhel: I understand what's going wrong. Yell when you come back.18:49.42 
henrys spends the last hour debugging the problem his tree is not up to date ;-(19:06.36 
mvrhel Robin_Watts: I am back, but you are probably gone by now23:45.03 
Robin_Watts I am here.23:49.20 
  The problem is that stroke adjust is enabled.23:49.42 
mvrhel I thought you had disabled it?23:49.56 
  which fixed the problem previously23:50.11 
Robin_Watts That rings a bell.23:50.54 
  It's definitely enabled.23:51.02 
  and consequently the lines are being shifted slightly leaving gaps.23:51.18 
mvrhel right. but that is what we fixed long ago I though23:51.31 
  t23:51.33 
  long ago being about 3 weeks ago23:51.38 
  we being you23:51.44 
  :)23:51.46 
  maybe you thought I was going to commit something for it?23:52.37 
Robin_Watts Yeah, maybe that's it.23:52.58 
  I can't see anything in xps that sets stroke adjust.23:53.09 
  I remember hunting through the code to find where the graphics state was setup.23:54.13 
mvrhel ok. I will take care of it23:56.29 
Robin_Watts Just looking now.23:56.36 
mvrhel thanks Robin_Watts. 23:56.39 
Robin_Watts if I can retrace my steps it may be easy.23:56.43 
  Right. That does indeed solve it.23:58.42 
  I'll have to do a cluster run to test it out though.23:58.50 
 Forward 1 day (to 2011/11/19)>>> 
ghostscript.com
Search: