![]() |
|
|
|
|
1
17th September 21:09
External User
Posts: 1
|
Hi all,
I have a few questions that I haven't been able to answer with some digging around on the web and in the IDL help files so maybe someone can help. The background on my question is that I'm trying to produce a "publication" quality plot using IDL and I intend to either make a ..tif from a screen capture using tvread.pro (http://www.dfanning.com/programs/pswindow.pro) or a color .eps using postscript output. I'm using IDL 6.2 on Windows XP. 1. Has anyone been able to get True Type fonts (i.e. !p.font=1) to look ok on the screen? When I use them, they look awful -- even worse than the default vector fonts I was trying to improve upon. I've seen some "tricks" about blowing them up 4x times in size, but that's not an option for me since that size of font won't fit on my plot. 2. Has anyone been able to get device fonts (i..e !p.font=0) to work correctly with vertical axis labels on the screen? When I use them, the labels are just letters stacked on top of each other right-side up. In other words instead of having to turn your head to read them, they look like this: L E B A L 3. Assuming I could get the fonts to work correctly, how do I get special symbols? For example, using vector fonts, I would type, "title='!4d!B'" to get little delta B -- how can I do this with the other font styles? 4. How come when I make sure that my plot size is the same on both the output window on my monitor and in the postscript output (by using David Fanning's pswindow.pro http://www.dfanning.com/programs/pswindow.pro) then I still have to adjust the positions of my plots, colorbars, etc. to make both outputs look the same? 5. It appears that the color output of the .eps file I make has very discrete color levels (about 10 or so) compared to the fairly smooth continuum I see when I output to a window on the screen. Is this a fundamental limit of postscript or am I doing something wrong? Thanks for any help and to all of you that have posted helpful IDL code on the web. Jared |
|
|
|
|
3
17th September 21:09
External User
Posts: 1
|
Jared Espley writes:
No. This is an item with a long history, but I think I can say with some assurance that direct graphics fonts will NEVER look good on the screen. To make them look good requires bitmaps, apparently, and IDL direct graphics does not have the machinery to manipulate bitmaps quickly. OpenGL *does* have the machinery, which is why screen fonts can (and do) look good in object graphics programs. No, screen fonts do not rotate on your display. They rotate in PostScript, but only in the XY plane, not in 3D. Symbols in Postscript usually require UNICODE characters. Here is an article that explains the situation in a lot more detail: http://www.dfanning.com/graphics_tips/lesign.html Humm. Not sure about this. Probably because your in Device coordinates? That would wreak havoc. This is something you are doing wrong. Probably you set the COLOR=1 keyword, but forgot the BITS_PER_PIXEL=8 keyword for the DEVICE command. Since you are already using PSWINDOW and other programs, why not just use PSCONFIG to get your PostScript page set up. Then most of these problems will be avoided. keywords = PSCONFIG(_Extra=PSWINDOW(), Cancel=cancelled) IF ~cancelled THEN BEGIN thisDevice = !D.Name Set_Plot, 'PS' Device, _Extra=keywords YourPlotHere Device, /Close Set_Plot, thisDevice ENDIF Cheers, David -- David Fanning, Ph.D. Fanning Software Consulting, Inc. Coyote's Guide to IDL Programming: http://www.dfanning.com/ Sepore ma de ni thui. ("Perhaps thou speakest truth.") |
|
|
5
17th September 21:09
External User
Posts: 1
|
Jared Espley writes:
You are thinking of this in the wrong way. Think of it as "job security" and it makes a lot more sense to you. :-) Cheers, David -- David Fanning, Ph.D. Fanning Software Consulting, Inc. Coyote's Guide to IDL Programming: http://www.dfanning.com/ Sepore ma de ni thui. ("Perhaps thou speakest truth.") |
|
|
6
17th September 21:09
External User
Posts: 1
|
Jared Espley writes:
Well, I am using the same Windows XP and IDL 6.2 system you are, and I find that unicode 22A5 is for a box! The perpendicular line is listed as unicode 007C. This code worked for me. device, set_font='Times New Roman', /tt_font thisDevice = !D.Name set_plot, 'ps' device, xsize=5, ysize=1, /inches, filename='test.ps', /isolatin1 xyouts, 0.5, 0.5, /normal, charsize=2, align=0.5, $ 'Straight bar (!Z(007C)) sign.' device, /close set_plot, thisDevice Cheers, David -- David Fanning, Ph.D. Fanning Software Consulting, Inc. Coyote's Guide to IDL Programming: http://www.dfanning.com/ Sepore ma de ni thui. ("Perhaps thou speakest truth.") |
|
|
7
17th September 21:09
External User
Posts: 1
|
David Fanning writes:
Whoops! That XYOutS command needs a FONT=1 keyword on the end of it! Sorry. Cheers, David -- David Fanning, Ph.D. Fanning Software Consulting, Inc. Coyote's Guide to IDL Programming: http://www.dfanning.com/ Sepore ma de ni thui. ("Perhaps thou speakest truth.") |
|
|
8
17th September 21:10
External User
Posts: 1
|
At risk of being unduly argumentative, I don't think 22A5 is supposed
to be a box. I got that code from here: http://www.unicode.org/charts/PDF/U2200.pdf You'll see which perpendicular symbol I'm trying to achieve there. Also, if you use, for example, 22A6 you also get a box when using the XP device fonts. Thus, I stick by my assertion that many of the XP device fonts don't have the full unicode implementation and thus are less useful for specific tasks. Fortunately, as I noted I was able to get something satisfactory with vector fonts. As usual, thanks for your time. Jared |
|
|
9
17th September 21:10
External User
Posts: 1
|
Jared Espley writes:
I think you need to read the first page of PDF file you cite, under the topic of "Fonts". They point out that their chart is "not prescriptive. Considerable variation is to be expected in actual fonts." To get the actual Unicode values for a *particular* font, you have to know something about that font. In the case I presented, I used the Character Map application for the Times New Roman font. There, 22A5 is *definitely* a box. :-) I'm not saying this isn't true. I'm just saying that I found the perpendicular line in the font I use day in and day out to have a Unicode value of 007C, and when I used it like that it worked perfectly. What font were you trying to use? Cheers, David -- David Fanning, Ph.D. Fanning Software Consulting, Inc. Coyote's Guide to IDL Programming: http://www.dfanning.com/ Sepore ma de ni thui. ("Perhaps thou speakest truth.") |
|
|
10
17th September 21:10
External User
Posts: 1
|
Jared Espley writes:
It is hard to know what that chart means. For example, if you look on page two of the document (the actual chart), you find that a vertical bar has a Unicode value of 2223 (not 22A5, which I read as a "flagpole" or something). But if you look on the next page, under Operators, you see 2223, and indented the value 007C for a "vertical line". I have no idea what any of this means! I do notice that I can get a vertical bar in my display text if I use !z(2223) but it appears as a box in PostScript! To get the vertical bar in PostScript I have to use !z(007c). Too weird... Cheers, David -- David Fanning, Ph.D. Fanning Software Consulting, Inc. Coyote's Guide to IDL Programming: http://www.dfanning.com/ Sepore ma de ni thui. ("Perhaps thou speakest truth.") |
|