| <<<Back 1 day (to 2013/10/23) | 2013/10/24 |
ray_laptop | does anyone know how to invoke the bmpcmp with fuzzy checking instead of strict ? | 03:45.56 |
| I see "fuzzy" mentioned in some of the clustermaster scripts but am not able (without pain) to decipher the perl to see how it works. | 03:46.44 |
stanv | kens: | 08:44.34 |
kens | yes ? | 08:44.44 |
stanv | PDFDocEncoding is a superset of the ISO Latin 1 | 08:54.06 |
| ISO Latin 1 doesn't have russian symbols | 08:54.35 |
| andâ¦. standard says that: | 08:55.08 |
| Text strings are encoded in either PDFDocEncoding or Unicode character encoding. | 08:55.10 |
| For text strings encoded in Unicode, the ï¬rst two bytes must be 254 followed by 255, representing the Unicode byte order marker, U+FEFF | 08:55.26 |
| That is I have. | 08:55.34 |
| ) The remainder of the string consists of Unicode character codes, according to the UTF-16 encoding speciï¬ed in the Unicode standard, version 2.0. | 08:56.00 |
chrisl | stanv: and your point? | 08:57.45 |
stanv | My point is that I can't use PDFDocEncoding because it lucks Russian symbols. | 08:58.23 |
chrisl | stanv: right, so you're using UTF....... | 08:59.01 |
stanv | And ghostscript incorrect processes strings⦠because it ignores U+FEFF | 08:59.08 |
| prefi | 08:59.13 |
| c | 08:59.14 |
| x | 08:59.14 |
kens | No, it doesn't ignore it, but the Appearance synthesis does not support text in YTF | 08:59.36 |
| UTF* | 08:59.42 |
chrisl | Yep, which is why kens said: open an enhancement "bug" and we'll look at it due course | 08:59.45 |
kens | I said all this yesterday | 08:59.49 |
| Your other alternative is to supply an Appearance stream for the annotations, then we will use that instead. | 09:00.26 |
stanv | And this is not enhacament. This is a real bug. | 09:00.28 |
chrisl | No, it's an enhancement | 09:00.38 |
kens | Its an enhancement | 09:00.50 |
stanv | chrisl: ghostscript doesn't follow standard | 09:00.59 |
chrisl | Generating appearances like this is not required by the standard | 09:01.06 |
stanv | it ignores 0xfeff prefix | 09:01.12 |
| IT REQUIRES | 09:01.20 |
kens | We are NOT required to syuynthesise appearance streams, its 'device dependent', anything we do is therefore 'correct' | 09:01.21 |
stanv | Look at http://partners.adobe.com/public/developer/en/pdf/PDFReference.pdf | 09:01.36 |
chrisl | stanv: okay, we'll remove the code that generates the appearance, and do nothing at all with it...... | 09:01.49 |
kens | Quote a page number, the PDF reference is vedry large | 09:01.50 |
| And we all have copies already as you would expect since we work with PDF all the time | 09:02.13 |
stanv | 98 (118) | 09:02.15 |
kens | Is that page 98 or page 118 ? | 09:02.39 |
| Page 908 refers to incremental updates in my copy | 09:03.00 |
| 98* | 09:03.11 |
| And page 118 refers to encryption | 09:03.23 |
stanv | Page chapter: 3.8 Common Data Structures | 09:03.30 |
kens | Yes, and ? | 09:03.45 |
stanv | Look at http://partners.adobe.com/public/developer/en/pdf/PDFReference.pdf | 09:03.47 |
kens | Please stop quoting the URL, we *have* the document | 09:04.01 |
stanv | It says: Text strings are encoded in either PDFDocEncoding or Unicode character encoding. | 09:04.10 |
kens | Yes, and ? | 09:04.15 |
stanv | You ignore this statement | 09:04.22 |
kens | No. | 09:04.24 |
stanv | I have string in Unicode | 09:04.34 |
kens | Listen. | 09:04.40 |
| THe *appearance synthesis* code does not support UTF | 09:04.52 |
stanv | It has prefix FE FF | 09:04.55 |
kens | THis is nothing to do with us supporting UTF text strings | 09:05.06 |
| It is a limitation of the appearance syntheseis, apearance synthesis is *DEVICE DEPENDENT* it is NOT required | 09:05.34 |
stanv | kens: give me link to "appearance synthesis*" | 09:05.36 |
| One more: | 09:06.33 |
| (Optional; PDF 1.3) The encoding to be used for any FDF ï¬eld value or option (V or Opt in the ï¬eld dictionary; see Table 8.72 on page 564) that is a string and does not begin with the Unicode pre-ï¬x U+FEFF. (See implementation note 92 in Appendix H.) Default value: PDFDocEncoding. | 09:06.42 |
kens | stanv I'm buisy I have other work to do. If you read through the chapters on annotations you will find the reference to appearance streams | 09:06.45 |
stanv | It is about forms!! | 09:06.53 |
kens | stanv, pleae stop quoting irrelevant bits of the spec | 09:06.57 |
stanv | SO! | 09:06.57 |
chrisl | stanv: regardless of whether we consider a bug or an enhancement, nothing will get done unless you report it | 09:07.50 |
kens | Lwt me put it simply; I accept that this is a limitation of the current optional behaviour. I am perfectly willing to take on an enhancement request to improve this functionality. I do NOT accept that this is a bug. | 09:08.12 |
| Shouting at me will not incline me further to your point iof view | 09:08.41 |
kens | is inclined to remove support for AcroForms altogether, its all interactive stuff and not really very relevant to a print applitcation | 09:12.44 |
chrisl | Unfortunately, I think that was added for a commercial customer, so that probably wouldn't be a popular option...... | 09:13.23 |
kens | Yes I suspect so, sadly | 09:13.40 |
chrisl | I wonder if the UTF support is a recent addition to the spec..... | 09:14.11 |
kens | No, its been there for ages | 09:14.20 |
stanv | )) English is not only one language of the world | 09:14.32 |
chrisl | And yet ASCII is still very popular..... | 09:14.56 |
kens | stanv Since I speak English, German, French and some Mandarin CHines, I'm well aware of that thank you | 09:15.18 |
stanv | http://bugs.ghostscript.com/show_bug.cgi?id=694738 | 09:17.12 |
chrisl | Sorry kens ;-) | 09:18.40 |
kens | chrisl I'm in the process fo modifying it | 09:19.00 |
chrisl | stanv: could you attach your example file to the bug, too, please? | 09:19.56 |
kens | He did | 09:20.11 |
chrisl | Oh, sorry, missed that.... | 09:28.22 |
stanv | kens: what do you think about my bug-report? | 10:40.53 |
kens | stanv its a bug report. I did say make it an enhancement | 10:41.17 |
stanv | ( | 10:41.45 |
| kens: could you help me to construct /AP object ? | 10:45.54 |
kens | Not really, no | 10:47.19 |
stanv | Do I need the /V (form_contetent ) ? | 10:47.25 |
kens | I believe you need that regardless, since this is a form field | 10:47.40 |
| V is the Value of the field, DV is the Default Value | 10:47.52 |
stanv | /V (UTF16) â RIGHT ? | 10:57.58 |
| that what /AP should contain ? <</N <</Type /XObject /Subtype form>> .. ? | 10:57.58 |
kens | It hsoudl be a stream which describes the appearance, in PDF terms | 11:03.38 |
stanv | Each appearance stream is a form XObject (see Section 4.9, âForm XObjectsâ): | 11:04.46 |
| kens: real russian text, that i want to se in form field.. it should be at /V or at /AP ? | 11:08.03 |
chrisl | I find this very confusing: the magic numbers at the start of the string to denote UTF text suggest we need to know the encoding, but if have to use the "currentfont" the text encoding is implicit in the font...... | 11:13.29 |
kens | stanv, if you are opening it with a PDF viewer which will synthesise the appearance, tehn you can put it in /V. If you want it to appear correctly in a viewer which does not do so (eg Ghostscript) then you need to supply an appearance stream which draws what you want ti to look like. THat measn an *entire* description, you cannot simply ptu the UTF16BE text in there. You will need to select encode and scale a font, set the currnet point, etc | 11:13.49 |
| chrisl I htink we have to use reverse ToUnicode CMap | 11:14.10 |
chrisl | So, we have to decode the string, then re-encode it suit the font? Yuck | 11:15.12 |
kens | Yes I beleive so | 11:15.24 |
chrisl | Seems a risky strategy when ToUnicode is optional...... | 11:17.05 |
kens | to my mind rebuilding an appearance is risky full stop | 11:17.36 |
stanv | 4. Paints the graphics objects speciï¬ed in the formâs content stream | 11:25.57 |
| â can it contain my string ? | 11:25.57 |
kens | not like that, unless you re-encode the font for UTF16 | 11:26.12 |
stanv | I just want put stream, like: | 11:31.51 |
| q | 11:31.51 |
| 0 g | 11:31.51 |
| BT | 11:31.51 |
| 18 795.884 Td | 11:31.51 |
| 105.522 Tz | 11:31.51 |
| /FN00 11.333 Tf <03760377036f0369036c0379> Tj | 11:31.51 |
| ET | 11:31.52 |
kens | You haven' positioned the current point, and that will only work if the font is correctly encoded to draw the correct glyphs from your string. I believe it is not, or you would not get incorrect glyphs with teh current synthesis code. | 11:32.42 |
stanv | okay! ) Thank you) | 11:33.07 |
| Where do I take /BBox [x x x x] parameters ? | 12:38.31 |
kens | What do you mean by 'take BBox parameters' ? | 12:41.32 |
stanv | http://fpaste.org/49167/38261873/ | 12:45.42 |
kens | Well tha'ts up to you to calculate | 12:46.27 |
| Since you are describing the appearance of the data, you should know what area it covers | 12:46.59 |
stanv | If I do it worng | 12:48.33 |
| o just 0 0 1000 100 | 12:48.41 |
kens | Then the appearance may not be correct, or the performance will suffer | 12:48.52 |
stanv | kens: can i point for /Resource same object as page's /Resource ? | 12:57.37 |
kens | Only if the form has the same resources with teh same names | 12:57.58 |
| uses* | 12:58.03 |
stanv | kens: can i write in one line as in: appearance_stream.append("BT /stanv_font 11.333 Tf <03760377036f0369036c0379> Tj ET"); | 13:20.56 |
| ? | 13:20.57 |
kens | I have no idea | 13:21.04 |
stanv | I mean BT - begin text object | 13:21.18 |
| ET - end text object | 13:21.25 |
chrisl | Can't you stick "\n" in so it's one call, but ends up multiple lines? It makes a nicer PDF | 13:22.30 |
chrisl | speaking as someone who often has to read the contents of PDF files..... | 13:22.55 |
Robin_Watts | Morning mvrhel_laptop: I haven't forgotten, I'm just buried in stuff at the mo, sorry. | 13:59.50 |
mvrhel_laptop | Robin_Watts: hello. no problem. | 14:00.04 |
| I am going to be out most of the early morning today | 14:00.13 |
henrys | Robin_Watts: are you reading the spec. or something else? | 14:15.31 |
Robin_Watts | which spec? | 14:15.50 |
henrys | 801's color spec | 14:16.14 |
Robin_Watts | oh, no. That's going fine. | 14:16.32 |
| My accountant mailed me earlier to say that I'd forgotten to send the stuff required for the VAT return at the end of this month :( | 14:17.10 |
henrys | well have a look at it to make sure we're on the same page. I'm sure we are but... | 14:17.33 |
Robin_Watts | I haven't looked at the spec. I just read the code. | 14:17.52 |
| I twigged to a problem with the full page downscaler in banded mode earlier. Need to look into solving that too. | 14:18.51 |
henrys | Robin_Watts: yes but when you respond with a recommendation you will have to reference parts of their specification - pointing out which things to change. The managers will look at how you changed the spec. engineers will look at code changes. | 14:21.50 |
Robin_Watts | ok, I shall read the spec too. | 14:24.00 |
stanv | what is | 14:24.47 |
| stream | 14:24.48 |
| %FilePosition: 2262 | 14:24.48 |
| endobj | 14:24.48 |
kens | I think it may be invalid, no endstream there, though possibly endobj implies endstream, I can't remember | 14:25.45 |
stanv | kens: it is a debug output from gs | 14:26.14 |
kens | Thenits debug output | 14:26.31 |
stanv | %Resolving: [13 0] | 14:26.43 |
| <<⦠| 14:26.43 |
| /ProcSet [ | 14:26.43 |
| /PDF /Text ] | 14:26.43 |
| >> | 14:26.43 |
| stream | 14:26.43 |
| %FilePosition: 2262 | 14:26.44 |
| endobj | 14:26.44 |
| Where is actual stream ? | 14:26.56 |
kens | In the PDF file | 14:30.05 |
stanv | kens: Adobe Pro in /AP doesn't use XObject | 14:31.23 |
| it uses dic : | 14:31.43 |
| http://fpaste.org/49216/38262513/ | 14:32.25 |
kens | stanv I'm actually working on something els, and I'm busy | 14:32.34 |
| And that is a stream dictionary you've posteed | 14:32.57 |
| I've never said you ahd to use a Form XObject | 14:33.18 |
stanv | Each appearance stream is a form XObject (see Section 4.9, âForm XObjectsâ) | 14:34.44 |
henrys | Robin_Watts: I do wonder if we'd need real planar rendering to be competitive with Zoran/CSI in this kind of architecture. | 14:34.45 |
Robin_Watts | "real" planar rendering? | 14:35.05 |
| I'm going to move their device over to planar. | 14:35.17 |
henrys | oh I thought you were going to stick with chunky and do a conversion. | 14:35.41 |
kens | stanv I can't make comments on a portion of a file. But if you think its wrong I suggest you cokplain to the producer, that would be Adobe. | 14:35.54 |
Robin_Watts | henrys: No. I've not tested planar with process page, but I am intending to use it. | 14:36.10 |
henrys | Robin_Watts: when do you think you will have a proposal ready for them so I can respond to his email and get out of your way ;-) | 14:37.11 |
Robin_Watts | henrys: What email? | 14:37.41 |
| Sorry, maybe I've missed something here. | 14:37.49 |
| I thought you were looking over their code, and happened to spot something that they were doing strangely. | 14:38.09 |
| and we were looking to remove the strangeness. | 14:38.20 |
| If there is a customer question behind all this, I haven't spotted it. | 14:38.38 |
henrys | well there are question 1-5 most are moot but I'd like to respond and say you are working on a new proposal. | 14:39.39 |
Robin_Watts | Ah, is this the mail from this morning at 08:05? | 14:40.04 |
| Right. I see it. | 14:40.43 |
henrys | The following are our questions when we discussed your proposal. ,,, | 14:40.57 |
Robin_Watts | henrys: Right. | 14:41.44 |
| Can you tell them that we are looking into it, and we'll get back to them within a week? | 14:42.01 |
henrys | so I can just tell him you are preparing a planar based solution. | 14:42.35 |
Robin_Watts | It's more than that. | 14:42.46 |
| but yes, give me a week and I should be able to get something working that's faster, uses less memory etc. | 14:43.29 |
| I may even be able to get them better quality. | 14:43.39 |
| no, actually, skip that last one. | 14:44.01 |
henrys | and uses the device api so we won't break it ;-) | 14:44.09 |
Robin_Watts | indeed. | 14:44.13 |
| But I wouldn't say that. | 14:44.26 |
| I think we want to run our response past Takane-san to check we don't lose them face. | 14:44.48 |
marcosw | i'm going to reboot casper after an update | 14:50.44 |
ray_laptop | Robin_Watts or henrys: have you looked at their BNM code? | 15:19.00 |
MaDog | hi | 15:19.49 |
henrys | probably what's bum? | 15:19.53 |
| bnm? | 15:19.57 |
ray_laptop | hi, MaDog | 15:19.58 |
Guest46197 | i have a problem :) | 15:20.16 |
ray_laptop | henrys: sorry Blue Noise Mask | 15:20.18 |
Guest46197 | i annot a pdf with a ps file and the pdf attachments are gone | 15:20.28 |
henrys | well yes but nothing more than to say okay this is halftoning stuff move on... | 15:20.49 |
ray_laptop | MaDog: first what are you using ? gs ? | 15:21.18 |
Guest46197 | yes gs 9.09 | 15:21.28 |
| -dBATCH -dNOPAUSE -dSAFER -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 | 15:21.37 |
| sorry this is all command line prompt: -dBATCH -dNOPAUSE -dSAFER -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -sOutputFile={:OUTPUT_FILE:} -dpi=300 {:PS_FILE:} -r300 {:INPUT_FILE:} | 15:22.13 |
henrys | ray_laptop, Robin_Watts: actually their understanding of ghostscript is quite impressive for outsiders. I mean they do have a working solution with 0 help. | 15:22.34 |
ray_laptop | henrys: It doesn't look like threshold array code to me. Unless I'm not understanding it. It looks like a constant field of some value is just going to have the array "noise" added to it | 15:23.38 |
kens | Guest46197 : firstly don't uses 9.09 that was withdrawn, 9.10 is the current version | 15:24.13 |
ray_laptop | henrys: I agree that digging into gxclthrd.c is more than most customers would do | 15:24.18 |
kens | Secondly, you are not 'annotating' a PDF file | 15:24.22 |
| When you run a PDF thourhg Gs to the pdfwrite device the original PDF is fully interpreted, a sequence of graphical primitives derived from it, and those primitives are rebuilt into a brand new PDF file. THe new PDF file has nor relationship with the original other than its appearance | 15:25.12 |
Guest46197 | kens : second part how can i correctly annot a pdf | 15:25.48 |
ray_laptop | Guest46197: there is no -dpi= command line option. That will set a variable "pi" to 300 in the systemdict. | 15:25.49 |
kens | Non-printing elements of PDF files (such as the CropBox and MediaBox) are captured by the PDF interpreter, and converted into PostScrip pdfmark operations, which are then passed to pdfwrite for processing. | 15:25.53 |
kens | thinks ray_laptop means 'dpi' | 15:26.10 |
Robin_Watts | kens: no, I think ray_laptop was right. | 15:26.41 |
kens | Guest46197 : Not all possible non-printing elements of a PDF file are captured by the PDF interpreter, and not all possible pdfmarks are processed by the pdfwrite device. | 15:26.44 |
| Oh yes, -dpi | 15:27.00 |
Guest46197 | thanks | 15:27.02 |
kens | ANwyay | 15:27.03 |
ray_laptop | I was just looking at the "all command prompt" message | 15:27.14 |
kens | THe PDF interpreter doesn't handle attachments, and pdfwrite doesn't process attachement pdfmarks, so this won't do wht you expect on 2 counts | 15:27.31 |
ray_laptop | and -r300 will have no effect on the output if you have a PS_FILE processed before it | 15:28.12 |
Robin_Watts | mvrhel_laptop: ping me when you're back. | 15:28.24 |
kens | Guest46197 : to annotate a PDF file use an application designed to annotate PDFs, Adobe Acrobat will do it, MuPDF will do some kinds | 15:28.26 |
henrys | Off to a house closing shortly be back later on. | 15:28.28 |
ray_laptop | henrys: you sold it already ? | 15:28.41 |
kens | WHats a 'house lcosing' ? | 15:28.46 |
| closing* | 15:29.11 |
ray_laptop | AIUI "closing" is the final step in selling / buying a house | 15:29.15 |
henrys | ray_laptop: no the closing on my new house. | 15:29.18 |
Guest46197 | thanks the help i will correct the parameters and try the MuPDF | 15:29.22 |
ray_laptop | henrys: Oh, I see | 15:29.26 |
| henrys: congratulations ! | 15:29.46 |
henrys | ray_laptop: we did have an offer and they backed out, I don't think it'll be long very active market here. | 15:29.58 |
ray_laptop | so you will have two house payments until you sell your existing house ? | 15:30.09 |
henrys | especially if you are selling high ground ;-) | 15:30.12 |
ray_laptop | henrys: or your house is no stilts | 15:30.36 |
Robin_Watts | Is that common in the US? (having 2 houses for a while). | 15:30.49 |
ray_laptop | Robin_Watts: not very | 15:30.56 |
Robin_Watts | In the UK we end up with long chains that all complete at the same time to avoid that. | 15:31.00 |
kens | mostly :@-) | 15:31.16 |
ray_laptop | most people can't qualify for the loan on the new house with a loan on the old house | 15:31.30 |
Robin_Watts | in an attempt to avoid that :) | 15:31.32 |
ray_laptop | Robin_Watts: same here, usually. Except for the wealthy | 15:31.50 |
henrys | Robin_Watts: no it is unusual, a combination of factors... | 15:31.57 |
Robin_Watts | We outdid another couple for this house, because we were cash buyers - no chain. | 15:32.25 |
ray_laptop | We tried it with our new place and couldn't qualify, so instead we rented the new place while we improved, then sold the old place, then bought the new place | 15:33.13 |
| Robin_Watts: yes, it's quite an incentive here when buying a house as well. | 15:33.49 |
henrys | Robin_Watts, ray_laptop I could pay my current mortgage delivering pizza so it isn't a big deal. | 15:34.02 |
ray_laptop | henrys: You could always keep it then and rent it out to people who's houses are under water :-) | 15:34.47 |
henrys | sabrina vetoed that knowing she'd get stuck with any problems that came up ;-) | 15:35.22 |
ray_laptop | Robin_Watts: Did you see my ? above about their BNM code ? | 15:35.36 |
Robin_Watts | ray_laptop: I haven't looked at their BNM code at all. | 15:35.54 |
ray_laptop | henrys: yeah, that's true. | 15:35.57 |
Robin_Watts | and I hope to avoid it. | 15:35.59 |
| return on investment from rental house > return on investment on cash in bank. | 15:36.26 |
| but return on investment from rental house may not be > reduction in mortgage payments with the new house. | 15:37.02 |
ray_laptop | for one thing, I think they should do the 4 pixels avg in a modified version of the code to avoid the extra copy for 4 of the 5 planes | 15:37.26 |
Robin_Watts | ray_laptop: The 4 pixel average will be done in place in my new code. | 15:37.49 |
| The black -> black copy then copy back will be completely avoided. | 15:38.11 |
ray_laptop | Robin_Watts: in place is still reading and writing | 15:38.14 |
Robin_Watts | and the average will not need a temporary buffer (let alone one of twice the size) | 15:38.43 |
| ray_laptop: Right, but it's a MUCH lower cache hit. | 15:38.54 |
ray_laptop | If the BNM step reads the 600dpi planes and writes out noisy 4-bit 300 dpi that's less memory bandwidht | 15:38.58 |
Robin_Watts | ray_laptop: True. | 15:39.16 |
| I will suggest that as a further optimisation. | 15:39.40 |
| but I don't want to put that on the critical path to getting them a revised version. | 15:40.06 |
ray_laptop | Robin_Watts: and the cache should be able to keep track of the two lines of pixels | 15:40.16 |
Robin_Watts | indeed. | 15:40.31 |
ray_laptop | Robin_Watts: but I don't understand their BNM code. As I said above, it looks to me like it is just adding noise from the table, then scaling down to the desired max. | 15:41.15 |
| and their doc says 4-bit, but the code has a maxDrop of 7 | 15:41.39 |
| of course 4 bits is big enough to hold 0-7 | 15:42.02 |
Robin_Watts | ray_laptop: I haven't looked. but ages ago, paulgardiner and I did video work, and even a really simple dither as you're describing can make a huge difference | 15:42.06 |
| 4 bits holds 0-15... | 15:42.24 |
ray_laptop | Robin_Watts: yes, but if you have 0 in, and add non-zero noise, you don't get 0 out. so pages will never be white | 15:43.10 |
Robin_Watts | ray_laptop: If you have 0 in as an 8 bit number, and you only want a 4 bit number out you can safely add 15 before you shift down 4 and you'll still get 0 out. | 15:44.02 |
| So your 'noise' can be between 0 and 15. | 15:44.13 |
| That really simple strategy can massively improve the appearance of gradients etc. | 15:44.48 |
| but then, you know this :) | 15:45.10 |
ray_laptop | Their BNM tables go from 0 to 255 | 15:45.12 |
Robin_Watts | as I say, I have not looked at their code. | 15:45.28 |
| ok. I've looked over mvrhel_laptop's code. I have a question to ask him when he's back, but it looks good. | 15:47.31 |
ray_laptop | it seems like they'd want to subtract 128 from the noise they look up in the table to keep the noise neutral. | 15:47.43 |
Robin_Watts | Anyone in the market for a 3d printer? 15 hours left... http://www.indiegogo.com/projects/the-peachy-printer-the-first-100-3d-printer-scanner/x/1895095 | 15:48.07 |
| can't remember if I pasted that here before. It's obscenely clever :) | 15:48.27 |
henrys | I suggest we stay out of the BNM stuff and focus on getting the device setup, running and sent to them. | 15:48.34 |
ray_laptop | Robin_Watts: I recall seeing that posted here | 15:48.46 |
henrys | Robin_Watts: that was one of the cool things to see at Chicago Print. | 15:49.13 |
Robin_Watts | henrys: They were demoing the peachy printer at Chicago Print? | 15:49.29 |
ray_laptop | henrys: OK. I suppose we could just make a modified version that did the 600-300 in the same step, or suggest that to them | 15:49.44 |
henrys | no but they did have a couple 3d printer vendors showing their products. | 15:50.03 |
Robin_Watts | henrys: Right. Most 3d printers are extrusion based things. | 15:50.23 |
| The peachy printer is photo lithographic. | 15:50.36 |
| The laser is driven in X and Y by the sound card from your PC. | 15:50.57 |
ray_laptop | or better yet, we do a modified memory device that only writes 300 dpi, but I think that's quite a bit more work. | 15:51.24 |
Robin_Watts | The Z level is given by the resin floating on salt water - as more salt water drips into the chamber, the resin rises, and you get the next level. | 15:51.29 |
| And the microphone is used to count drips. | 15:51.41 |
henrys | oh I'll read about that. | 15:52.03 |
Robin_Watts | ray_laptop: Having different planes at different resolutions breaks ghostscripts assumotions big time. | 15:52.37 |
henrys | bbiaw | 15:53.02 |
chrisl | Robin_Watts: I wondered if something like what we do for the AlphaBits settings would be viable | 15:54.35 |
Robin_Watts | Urgh. | 15:55.14 |
chrisl | Well, it's essentially a similar thing - rendering at a multiple of the requested resolution | 15:56.12 |
| But I don't know if we could restrict to the individual plane, and have stuff like transparency and overprint work | 15:56.43 |
ray_laptop | yeah, the transparency doesn't use memory devices. It has its own rendering. Never mind. Bad idea. | 15:57.35 |
chrisl | TBH, I don't think I've ever seen a printer that does different resolutions for different planes - doesn't sound like a great idea to me | 15:58.31 |
kens | Remember we had one customer that uised different screens on different planes.... | 15:59.05 |
Robin_Watts | chrisl: It's not a stupid idea. JPEGs routinely lower color resolution, as does video compression. | 15:59.15 |
ray_laptop | kens: that's quite common | 15:59.23 |
Robin_Watts | our eyes are MUCH more sensitive to luminance than to chrominance. | 15:59.36 |
kens | ray_laptop : not like what this cusotmer was doing | 15:59.39 |
| I mena different screening technologies | 15:59.47 |
ray_laptop | Robin_Watts: yes, but JPEG is dealing with YCC, | 15:59.59 |
chrisl | Robin_Watts: yeh, but it's going to cause oddities if you have super-blacks, or colored text etc | 16:00.27 |
Robin_Watts | ray_laptop: CMYK; K is the luminance, CMY is the chrominance effectively. | 16:00.40 |
ray_laptop | their resolution of the color planes is much different to hue variation. It affect the spatial resolution | 16:00.55 |
chrisl | Robin_Watts: it makes more sense to me to switch resolution based on object type...... | 16:01.23 |
Robin_Watts | ray_laptop: Right, it was exactly spatial resolution I was talking about. That's what JPEG and MPEG etc do. | 16:01.31 |
ray_laptop | But the net is that edges and text in color will be jaggy compared to the K | 16:01.53 |
Robin_Watts | even as far back as PAL and (I think) NTSC. | 16:02.02 |
| ray_laptop: Right, pure colors, yes. but your eyes won't notice it. | 16:02.15 |
ray_laptop | Robin_Watts: dropping bits from the chrominance doesn't affect the spatial quality -- just the hue | 16:02.36 |
Robin_Watts | or at least, not as much as you'd expect. | 16:02.40 |
| Who was talking about using different numbers of bits for the chrominance and the luminance? | 16:03.10 |
| I was talking about using different spatial resolutions. | 16:03.21 |
| 801s device uses 300dpi for CMY and 600dpi for K. | 16:03.59 |
ray_laptop | as long as the Y component is full res, then lower spatial res on the hue just means the color is slightly off on edges, not that the edges of a colored object are more jaggy | 16:04.00 |
Robin_Watts | ray_laptop: Right. | 16:04.19 |
chrisl | Still, I only meant it as an observation, it's not like we're likely to convince the customer they are wrong...... | 16:04.27 |
Robin_Watts | That's what JPEG and MPEG and h264 and .... do. | 16:04.44 |
ray_laptop | but a blue line at 300 dpi with their device will be more jaggy than a K line. But chrisl is right. The customer is (almost) always right | 16:05.25 |
chrisl | ray_laptop: I didn't mean that! "The customer is almost always impossible to convince they are wrong"! ;-) | 16:06.07 |
Robin_Watts | it is almost always a bad idea to tell your customer that they are wrong. | 16:06.33 |
ray_laptop | chrisl: well put! | 16:06.37 |
Robin_Watts | Tell them that you have an alternative scheme that works even better... | 16:07.07 |
chrisl | I wonder what the reasoning behind the 300dpi CMY channels is | 16:09.12 |
Robin_Watts | chrisl: Presumably exactly what we've just been discussing. | 16:09.48 |
chrisl | I'd expect better overall print quality just using 600dpi. | 16:10.29 |
Robin_Watts | Color printing of photos; you get the high res greys giving you smooth gradients, and the color at 300dpi is enough. | 16:10.46 |
| Right, at the expense of (presumably) a more expensive print head. | 16:10.59 |
chrisl | Robin_Watts: Right, which is what I mean: if it's saving money on the print head, or using less ink, then that's fine. If the original reason was performance, then that's probably not going to fly | 16:12.18 |
ray_laptop | chrisl: it probably is a lower cost printhead. | 16:15.06 |
| chrisl: I think this is a full line printhead, so twice as many nozzles for 4 colors | 16:16.53 |
chrisl | ray_laptop: sure, like I say, that makes sense | 16:17.30 |
ray_laptop | and a 600 dpi head is a LOT harder to manufacture -- even if it is two 300 dpi heads bonded together | 16:18.42 |
chrisl | ray_laptop: I just know how often these things become requirements "because it's how we do things", when the original reasoning has long since become obsolete... | 16:18.57 |
ray_laptop | that is true | 16:19.28 |
stanv | kens: https://dl.dropboxusercontent.com/u/9413602/e2.jpg | 16:21.00 |
| I added xobject, that has Text | 16:21.18 |
| but it seems not the same what does acrobat pro ((( | 16:21.55 |
ray_laptop | stanv: Ghostscript is not supported for free users. Please puzzle it out yourself. We can't help you. | 16:24.58 |
chrisl | stanv: have you considered discussing it with the developers of the PDF creation lib you seem to be using? | 16:25.39 |
ray_laptop | stanv: if you think ghostscript is doing something wrong, open a bug and we'll have a look, eventually | 16:25.40 |
kens | ray_laptop : he has opened an enhancement bug report | 16:25.56 |
ray_laptop | kens: I know. I just wanted to forestall more distraction | 16:26.18 |
stanv | It is possible that /V () contents (which is UTF16 even in PDF created by AcrobatPRO) is modified by /AP ? | 16:26.25 |
ray_laptop | stanv: ask Adobe ? | 16:26.51 |
stanv | ray_laptop: I ask you, because GS correct process /AP created be AdobePRO (which is some kind of Filter) | 16:27.50 |
| I need to know, how GS process /V (contents_in_UTF16) according to /AP in form field. Because without /AP it fails. | 16:32.46 |
| What type of /AP I should create ? | 16:32.46 |
kens | If there is an AP stream we do not process /V for a text field, we just use the AP | 16:33.13 |
stanv | I read PDF reference⦠and it is VERY big. | 16:33.13 |
kens | Yes :-) | 16:33.24 |
ray_laptop | stanv: I would say, generate an AP just like Acrobat creates, since that works, right ? | 16:33.38 |
stanv | kens: NO! I have both. /AP and /V and GS looks at /V | 16:34.17 |
kens | I think not. | 16:34.35 |
stanv | I have proof. | 16:34.51 |
kens | TBH I really don't care | 16:35.09 |
ray_laptop | stanv: refer to Resource/Init/pdf_draw.ps beginning line 2303. GS only attempts to create an appearance (from the V) IFF there is not an AP in the widget. | 16:37.45 |
| stanv: of course, you'll probably have to read the PLRM and a lot of the other PS code in Resource/Init to understand it. | 16:39.04 |
| I have to go get more coffee. bbiab | 16:39.56 |
kens | OK I@m off goodnight all | 16:41.16 |
stanv | ray_laptop: what kind of /AP (xObject) should exist ? What this stream should contain ? I have BT ET in stream. And GS ignores this stream and uses /V ÑÑÑеÑÑÐµÑ | 16:41.19 |
kens | stanv It does not. It is simply the case that, as I said before, the font you are using is not encoded in such a way that UTF16BE code points map to the glyphs you expect them to. If it was so encoded, the original text synthesis would work. | 16:42.31 |
| You will have to either use a differently encoded font, or alter the UTF16BE text to appropriate CIDs for the CIDFont you are using. | 16:43.03 |
| For example, in the tedxt object with the UTF16BE string : | 16:44.19 |
| "/V <FEFF00310073042204150421042204110410041D041D04150420> | 16:44.28 |
| Acrobat encodes the CIDS as x0031, x0073, x0359, x34C, x358 etc. | 16:45.25 |
| In fact the frist two are actually using a different font encoded as WinAnsi, but the point is that the latter, Cyrillic glyphs are *NOT* encoded in teh font at teh UTF16BE code points, so you can't simply 'show' the UTF16BE string. | 16:46.16 |
| The fact that you get the same result from your appearance stream simply shows that you haven't done what I discuszsed with shril earlier, you need to look up the ToUnicode CMap which is supplied with the font, reverse it so that given a Unicode code point you can get the CID, and tehn emit that CID in place of the UTF16 code point. | 16:47.58 |
| ANd now I really am leaving. | 16:48.04 |
stanv | kens: /V must contain UTF16 encoded strings⦠not CID's for the CIDFont I'm using. Because Editing mode for forms will fail. | 16:49.13 |
chrisl | stanv: kens was talking about in your AP Form XObject - you can't just use UTF in the form stream, you need to decode the UTF into CIDs appropriate for the font | 16:50.16 |
stanv | https://dl.dropboxusercontent.com/u/9413602/e2.jpg | 16:51.14 |
chrisl | That really tells us nothing...... | 16:51.59 |
stanv | chrisl: do you see russian words "privet" under arrows. They come from /AP stream that contain CID's | 16:52.26 |
| I'm talking about /V | 16:52.53 |
| chrisl: kens proposed to fill /V contents with CIDS | 16:53.46 |
| what is wrong | 16:53.56 |
chrisl | stanv: that wasn't how I read kens's reply, since he was replying to your question about /AP | 16:54.30 |
| stanv: but anyway, we've already explained why GS doesn't handle the UTF16 string in the /V entry, so...... | 16:55.23 |
stanv | chrisl: I have /AP xObject. It has stream in CID's. | 16:56.03 |
| but GS steel uses /V | 16:56.22 |
| !!!! | 16:56.24 |
| still | 16:57.09 |
| ( | 16:57.10 |
Robin_Watts | stanv: Open a bug. Attach the file. Assuming that kens has the time/inclination he might possibly have a look. | 16:58.01 |
stanv | I ask for a kind of stream. What it should like be, but nobody can explain. I have stream with Text object operators BT and ET inside is text CID's. | 17:00.29 |
| But GS uses /V | 17:00.47 |
| ((( | 17:00.49 |
chrisl | stanv: /AP is a Form XObject | 17:01.01 |
stanv | chrisl: STREAM | 17:01.25 |
| XObject is stream | 17:01.41 |
| I know | 17:01.44 |
chrisl | Form XObjects contains a content stream | 17:01.47 |
stanv | what is CONTENT stream ? | 17:02.01 |
chrisl | A stream containing marking operations made by PDF operators | 17:02.42 |
stanv | chrisl: be so kind ) point me to CONTENT stream at http://partners.adobe.com/public/developer/en/pdf/PDFReference.pdf | 17:03.24 |
| I use BT ET operators.... | 17:03.44 |
| in this stream | 17:04.06 |
| I don't understand what is content stream | 17:04.17 |
chrisl | Perhaps you need to spend some time reading the PDF reference? | 17:04.58 |
stanv | ( | 17:05.41 |
chrisl | stanv: the part you want for this is well hidden in section 3.7: "Content Streams and Resources" | 17:06.16 |
| Page 151 in the version of the PDF spec I have here...... | 17:07.12 |
stanv | I seeâ¦. Okay⦠Let me to read it | 17:08.04 |
sebras-hotel | stanv: there is a content stream at offset 167153 in PDFReference.pdf | 17:09.42 |
ray_laptop | the content is the part from "stream<cr><lf>" until "endstream" | 17:10.17 |
| is it time for opmode action yet ? | 17:12.28 |
sebras-hotel | ok, so now I have been helpful enough today. time to go. Thanks for being here. Shanghai would be much more lonely without you guys. :) | 17:14.10 |
stanv | Content streams are also used to package up sequences of instructions as self-contained graphical elements, such as forms (see Section 4.9, âForm XObjectsâ) | 17:35.23 |
| I don't understand this sentence . | 17:35.38 |
| ( | 17:35.38 |
chrisl | stanv: did you read the section on forms? | 17:37.54 |
stanv | I'm still trying | 17:38.17 |
| Okay. I done. | 17:42.33 |
| I have: | 17:42.33 |
| stream | 17:42.33 |
| BT | 17:42.33 |
| (A stream with an indirect length) Tj | 17:42.33 |
| ET | 17:42.33 |
| endstream | 17:42.34 |
| Corresponding to document it is correct. | 17:43.01 |
| But GS takes /V (form_contents_text_int_UTF16) | 17:43.47 |
| My case: | 17:45.05 |
| 7 0 obj <</Type /Annot /Subtype /Widget /F 4 /Rect [276.6 587.7 512.7 613.1 ] /FT /Tx /P 1 0 R /T (job-title) /V (þÿ^@t^@e^@s^@t^@p^@r^@i^@n^@t) /DV (þÿ) /DR <</Font 6 0 R >> /DA (/stanv_font 14 Tf) /M (D:20131024192807) /AP <</N 44 1 R >> >> endobj^M | 17:45.07 |
| GS ignores /AP | 17:45.20 |
| 41 1 is: | 17:45.29 |
| 44 1 obj <</Type /XObject /Subtype /Form /FormType 1 /Length 125 /Resources 42 0 R /BBox [0 0 1000 1000 ] >> stream^M | 17:46.05 |
| BT | 17:46.05 |
| /stanv_font 12 Tf | 17:46.05 |
| (A stream with an indirect length) Tj | 17:46.05 |
| <03760377036f0369036c0379> Tj | 17:46.05 |
| ET | 17:46.05 |
| 0 0 m | 17:46.05 |
| 0 500 l | 17:46.06 |
| 100 700 l | 17:46.06 |
| 10 0 l | 17:46.07 |
| f | 17:46.08 |
| ^M | 17:46.08 |
| 44 1 obj <</Type /XObject /Subtype /Form /FormType 1 /Length 125 /Resources 42 0 R /BBox [0 0 1000 1000 ] >> stream^M | 17:46.38 |
| BT | 17:46.38 |
| /stanv_font 12 Tf | 17:46.38 |
| (A stream with an indirect length) Tj | 17:46.38 |
| <03760377036f0369036c0379> Tj | 17:46.38 |
| ET | 17:46.38 |
| endstream | 17:46.39 |
chrisl | stanv: then, as Robin_Watts said, open a bug, attach your file, and we'll investigate it when we have time | 17:47.04 |
ray_laptop | stanv: and stop pasting your stuff here, please !!!! | 17:48.03 |
Robin_Watts | ray_laptop: SSE stuff relies on an alignment of 16 bytes, doesn't it ? | 17:57.23 |
| mvrhel_laptop: ping | 17:58.10 |
| If we want to allow people (such as 801) to use SSE to operate 'in place' on the data in buffer devices, then we need to arrange the buffer devices to be not only aligned to 16 bytes, but also to have a raster of 16 bytes. | 18:01.10 |
ray_laptop | Robin_Watts: yes, I think it does | 18:05.13 |
| Robin_Watts: yeah, I noticed that they step by 16 bytes in their x loop, and raster is usually only padded to 32 bit boundaries | 18:06.15 |
Robin_Watts | align_bitmap_mod can be 4 or 8. | 18:06.49 |
| (well, 1-4, or 8 according to the comments) | 18:06.58 |
| Can you think of anything that would break by us pushing to 16? (Just for their builds) | 18:07.26 |
ray_laptop | that's for the bitmap. I don't know if it applies to lines within the buffer | 18:07.41 |
Robin_Watts | actually, maybe we don't need to push it for all bitmaps... yes, as you say, we only need it for lines within the buffer. | 18:08.03 |
ray_laptop | Robin_Watts: right, so that's where the scan line pointers are set up | 18:08.32 |
Robin_Watts | How would you feel about us changing the code so that all buffer devices have a guaranteed alignment and span ? | 18:08.58 |
| ow, ow, ow. I twisted my ankle when running this morning, and it hurt like hell, but wore off after 30 yards or so. It's just kicked back in :( | 18:09.51 |
ray_laptop | Robin_Watts: I think that sounds OK. | 18:10.54 |
| oops. Boss called. She needs me to run an errand. Get stuff for my 7yr old's birthday Sat. | 18:19.09 |
| bbiaw | 18:19.12 |
stanv | Anybody⦠Do i need to run "<my xObject > DO" byself ? | 18:19.46 |
chrisl | stanv: not in an AP context, the interpreter will do so. | 18:21.10 |
stanv | interpreter - is GS ? | 18:21.50 |
chrisl | or Acrobat, or poppler etc etc | 18:22.17 |
stanv | So⦠give up. I have all necessary (Except right BBox field) and.. my /AP just ignored | 18:25.26 |
chrisl | stanv: well, you could open a bug, then we can have a look at the file, and possibly tell if it's a problem with the file, or a a problem with gs - this is relatively new code, so issues are possible..... | 18:29.17 |
| But I am now going to do some crazy nonsense on a squash court, which may (but may not) include actually playing squash....... | 18:31.08 |
| 'Nite all! | 18:31.14 |
mvrhel_laptop | Robin_Watts: I am back | 18:34.52 |
Robin_Watts | mvrhel_laptop: Your commit looks fine, with some minor things. | 18:35.26 |
| Firstly, you're obviously using 4 space tabs, which makes the indentation on a few things look really wacky when viewed with normal 8 space tabs. | 18:36.02 |
mvrhel_laptop | hmm I had not changed any spacing from what I was doing before | 18:37.04 |
| and the rest of mupdf looks fine when I view it not sure what that is all about | 18:37.29 |
Robin_Watts | http://git.ghostscript.com/?p=user/mvrhel/mupdf.git;a=commitdiff;h=52dd8a3e321bb965f8f02494026d545fddf54c01 | 18:38.02 |
| Seach for RenderPageMT | 18:38.13 |
| or fz_new_pixmap_with_data | 18:38.35 |
mvrhel_laptop | I see | 18:38.40 |
Robin_Watts | ooh, I just did something, and chatzilla shrank the text size. | 18:38.48 |
| I like that. How the hell did I do it? | 18:39.01 |
mvrhel_laptop | ok let me see if I can fix the spacing | 18:39.12 |
Robin_Watts | mvrhel_laptop: It's not a big problem! | 18:39.20 |
mvrhel_laptop | for some reason I thought 4 spaces = tab was "normal" | 18:40.26 |
Robin_Watts | I was going to ask if the xaml change in the first chunk was correct, as it looked like the kind of thing that might have been caused by knocking a menu option up or down one, but I guess from looking at the rest it's probably deliberate. | 18:41.05 |
| mvrhel_laptop: Holy wars have been fought over less :) | 18:41.15 |
| but otherwise that looks great, go ahead and push. | 18:41.43 |
mvrhel_laptop | yes. that change is correct | 18:41.50 |
| it was to make the rendering occur when the person lifts from the slider | 18:42.26 |
| like on the android device | 18:42.30 |
Robin_Watts | mvrhel_laptop: You're the only one who looks at the windows 8 stuff, so as long as the indentation is right for you, I have no real problems with it. | 18:42.33 |
mvrhel_laptop | ok | 18:42.39 |
| personally I like spaces over tabs but we know where tor stands on that one | 18:43.48 |
| do the sumatra test files end up throwing a lot of exceptions? I want to do a bit of testing on some files that have issues to make sure I am catching everything and handling properly | 18:45.48 |
| then I need to make a change so that the zoom level is maintained as you go from page to page (someone requested that) | 18:46.19 |
| then I do a release update | 18:46.38 |
| someone bellyached that there was no print option. | 18:46.50 |
| if we had an xps output device that would be easy to work in | 18:47.07 |
| Robin_Watts: have you finished that one up? | 18:47.17 |
| ;) | 18:47.40 |
Robin_Watts | mvrhel_laptop: Some of the sumatra files are very broken. | 18:48.19 |
mvrhel_laptop | ok. I will do some testing with them | 18:48.31 |
Robin_Watts | but they may be so broken they don't even open. | 18:48.46 |
mvrhel_laptop | ok | 18:48.57 |
Robin_Watts | I wonder if we can search for 'error:' in the web thing and get a list of files that fail. | 18:49.12 |
mvrhel_laptop | that would be handy | 18:49.27 |
Robin_Watts | mvrhel_laptop: Push your fix, and then it'll do a run that we can search through. Sadly it looks all ghostscripty at the moment. | 18:50.08 |
mvrhel_laptop | Robin_Watts: push what where? | 18:51.42 |
Robin_Watts | Push your windows 8 fix to golden. | 18:52.23 |
mvrhel_laptop | I don't think I have access to do that do I? | 18:52.37 |
| you guys have not trusted me yet :) | 18:52.46 |
Robin_Watts | I think we all do. | 18:52.49 |
mvrhel_laptop | oh ok. let me try | 18:52.56 |
Robin_Watts | mvrhel_laptop: Any of us can push, it's just that we review first, so you've probably not needed to. | 18:53.14 |
mvrhel_laptop | let me make sure I am updated though first | 18:53.23 |
| ok. that seemed to have worked | 18:55.39 |
| Robin_Watts: why does it do 2 regression tests? | 18:56.27 |
| one for mupdf and one for mujstest | 18:56.46 |
| I see | 18:56.48 |
Robin_Watts | yeah. | 18:57.07 |
mvrhel_laptop | brb. | 19:02.52 |
| Robin_Watts: the search for error seems to work | 19:05.50 |
Robin_Watts | mvrhel_laptop: Ah, fab. | 19:06.36 |
| Hmm. | 19:21.24 |
| We have no method in gs for allocating an aligned buffer. | 19:21.43 |
| which means I'll need to overallocate and pad, and mess with the freeing. | 19:22.15 |
mvrhel_laptop_ | Robin_Watts: I think that is what I had to do with the SSE2 stuff in the halftone | 19:33.14 |
Robin_Watts | mvrhel_laptop_: Yeah. I was wondering if there is enough call to push it back as a gs_alloc_aligned_bytes call, but I don't think I have the energy for that. | 19:34.02 |
mvrhel_laptop | that is because you spent the day doing taxes... tomorrow maybe? | 19:34.39 |
Robin_Watts | It would be horrible, I just know it. | 19:35.41 |
stanv | Acrobat Reader and MacOs Viewer completely different act with forms (( | 19:41.01 |
| Some one shows /AP another /V | 19:41.14 |
| ((( | 19:41.15 |
| Even not in my PDF files | 19:42.33 |
| ( | 19:42.35 |
Robin_Watts | mvrhel_laptop: A problem occurs to me... | 20:04.27 |
| when we do get_bits_rectangle and we're returned pointers to the memory, I think various bits of code assume that the raster is bitmap_raster(width) | 20:05.19 |
| And if we're having 'special' padding for add gdev_mem's, that will be broken. | 20:05.45 |
mvrhel_laptop | Robin_Watts: you are more knowledgeable about this thanme | 20:06.32 |
Robin_Watts | I wonder if I can use a dev_spec_op to indicate that the buffer device should be aligned. | 20:08.49 |
mvrhel_laptop | ugh. I have some weird thing going on with the windows app where it throws and unhandled exception if I use the mouse scroll after starting the app. no doc loaded so this is some weird xaml issue | 20:38.42 |
Paul___ | Is anyone here familiar with IrfanView? | 20:56.19 |
| I am trying to add ghostscript to it was wondering if there was any special aadvice | 20:57.41 |
mvrhel_laptop | ok this is driving me crazy | 20:59.57 |
| ok. so the store app does not have this issue | 21:01.39 |
| on my windows 8 machine | 21:01.52 |
| checking it this is an 8.1 issue | 21:01.58 |
| f*** it is a windows 8.1 issue | 21:05.20 |
| brb | 21:08.38 |
ray_laptop | henrys: rather than "I am surprised", "I am impressed" might have been better. | 21:11.28 |
henrys | agreed | 21:11.48 |
| hopefully it will be lost in translation I didn't intend any malice | 21:12.11 |
ray_laptop | but otherwise, that sounds good. | 21:12.31 |
| henrys: I know you weren't intending to focus the "surprise" at them, but meant that most customers would not have been able to do this much, and it was a pleasant surprise that they did so (at least, that's my reading of your intent) | 21:14.16 |
ray_laptop | may be overly sensitive to nuances | 21:15.12 |
| but in any case, at least the issue of them "going dark" is resolved :-) | 21:16.07 |
henrys | your words would have been better another case for review - I should have sent it to tech and gotten feedback. | 21:16.08 |
| right | 21:16.23 |
ray_laptop | scott-san can relax now :-) | 21:17.48 |
| henrys: usually emails to customers don't need review (we hope). Kens and Marcos do the most, and I do ones with cust 532 and (only technical) ones to 801, but I think Robin_Watts and I thought this might be a touchy subject | 21:19.48 |
| but that's "water under the bridge". Too much commentary from me, already. As I'm sure you'll agree. ;-) | 21:20.53 |
| henrys: If you (or Miles) ever wants to insert a "review" on emails, I assume that one or both of you will let us know | 21:22.02 |
| Forward 1 day (to 2013/10/25)>>> | |