Strange font behaviour

Hi list,
recently I encountered strange behaviour of some fonts (type
1) in FreeHand (11.02, Mac 10.3.9)
Some characters don't display (neither on screen nor in
print). For instance, I can't type the euro sign in Scala. When I
use the same font in Indesign or Illustrator all is well.
Anybody ever had the same problem?
What can be done about it?
TIA
Willem van den Goorbergh

The Font Suitcase file contains bitmap (screen resolution) representations of all the associated varieties of that typeface, whereas the Postscript Outline files contain vector data, telling the printer how to output the characters.
Quark 6.5 can function with only the bitmap representations, as long as you don't try to print the file.
The bitmap is used to display the characters on screen (screen resolution is very low compared to print resolution). However, when you try to print to a Postscript printer (or make a PDF file), Quark sends the linked Postscript Outline vector data. This allows the output device to use the best possible resolution it can produce.
It seems that with Quark 7, they've decided to have the program detect the Outline fonts when a document is opened, rather than when you try to print - to prevent people from using typefaces then cannot use for output.
Postsript fonts are a real pain-in-the-neck, since it's easy to separate the Outline file from the suitcase file. The newer OpenType format looks like it could solve a lot of problems.
PowerBook G4 1Ghz 15   Mac OS X (10.4.6)  

Similar Messages

  • Strange font behaviour in info / report windows

    i've had this problem for a long time and i'm ready to fix it now. whenever i get an info or report window in a programme like xACT or justabout anywhere, the font looks very strange. at first i thought it was going vertical but now i realise it is one character to a column, two columns to a window. it looks something like this ...
    T H
    I S
    I S
    W A
    T I
    T L
    O O
    K S
    L I
    K E
    (except that the right column is perfectly aligned, and halfway across the window).
    i don't know what font it is, how to find what it is, or if it has somehow been corrupted. if i select all and past it into a text edit document then it reads fine.
    has anyone experienced this before & how can i correct it ?
    thanks,
    mark
    PowerBook G4 15   Mac OS X (10.3.9)  

    Hi Doug --
    If you are positive it's the Curlz font,
    don't just disable it. Locate it via "Find" or Spotlight.
    Put it in the trash.
    Restart your Mac and test again.

  • Strange font behaviour when printing from PDF

    Hi - hoping someone can shed some light as I've been going slightly crazy trying to figure out what's happening.
    I'm working on a Mac. I'm using the .ttf fonts of the Oswald family - obtained from Google fonts (and various other sources to rule out corrupt files).
    When exporting the PDF from InDesign and printing it myself, there are no issues. When I send the PDF to others on a Windows machine, it prints fine.
    When sending the PDF to my client (always the way) some of the font characters are, well, nudged down half way almost, out of alignment. It only happens on some characters, not all.
    We only discovered this before submitting an ad to the printers, and for safety's sake, I converted all the text to outlines. Ok for now, however not a long term solution as we need to be able to use this font for live situations.
    Has anyone experienced this before? Or perhaps can anyone suggest a workaround? I have to use TTF fonts as a 3rd party company who are working on some dynamic brochures have requested it.
    I'm literally at a loss.
    Thanks in advance.

    Well I can give you what I did to get around the problem.  I am running Adobe X pro on windows 7.
    1.  The print job in queue, cancel it so that it is deleted.  You now should have no jobs pending.
    2.  Go to Control Panel\Hardware and Sound\Devices and Printers(Win7) or just the printer and devices for your OS.  Yes this must be done with Admin privilages.
    3.  Go to Printer Properties for the Adobe PDF printer.
    4.  Select the ports tab.  Mine was on Com3.
    5.  Select Add a Port and call it Adobe Printer or something.
    6.  Select the check box and select apply.
    You should now print with no errors.
    -G
    Yes I am aware this has been a year, but this has happened over several versions.

  • Really strange Font behaviour - variants missing

    Hi,
    I'd really appreciate any help.
    I have a MacBook Pro running OSX 10.4.6. I occasionally need to do some work on Quark Xpress.
    One of my documents uses a font called Berling. Under Quark XPress 6.5, I installed the font in the font book and all was well.
    Upgraded to Quark 7 - suddenly same document can't find Berling Bold or Berling Italic.
    Testing to see what the issue is, I took out Quark 7, reinstalled 6.5 and all was fine again.
    Looked in Font Book and it only showed 1 subset of Berling - Berling Roman. When I click on Berling though and select validate, all the subsets show up as working - but they are not visible in the Font Book Application. If I delete Berling and double click the Berling FFil to reinstall, Font Book only shows Roman as the only available variant of Berling. If I install this, Roman is all I can see, unless I click validate - which shows all the variants.
    Quark 7 seems to think Berling Roman is the font and that there are no variations.
    Does anybody have any idea why this would be happening?
    cheers

    The Font Suitcase file contains bitmap (screen resolution) representations of all the associated varieties of that typeface, whereas the Postscript Outline files contain vector data, telling the printer how to output the characters.
    Quark 6.5 can function with only the bitmap representations, as long as you don't try to print the file.
    The bitmap is used to display the characters on screen (screen resolution is very low compared to print resolution). However, when you try to print to a Postscript printer (or make a PDF file), Quark sends the linked Postscript Outline vector data. This allows the output device to use the best possible resolution it can produce.
    It seems that with Quark 7, they've decided to have the program detect the Outline fonts when a document is opened, rather than when you try to print - to prevent people from using typefaces then cannot use for output.
    Postsript fonts are a real pain-in-the-neck, since it's easy to separate the Outline file from the suitcase file. The newer OpenType format looks like it could solve a lot of problems.
    PowerBook G4 1Ghz 15   Mac OS X (10.4.6)  

  • Font behaviour in iWeb2

    After upgrading my website to iWeb2.02 I have strange font behaviour when I look at the website with a browser.
    The fonts are nothing special (arial) but I've been playing around with the new widgets which seems to have messed up some of the HTML code. I removed as much of the widget code as I could find but no improvement.
    I've seen several questions on this matter in this discussion group, but no answers that would resolve it.
    Look at the difference between these 2 pages:
    http://www.labscores.com/LabScores/home.html (problem example)
    http://www.labscores.com/LabScores/LabSuite.html (page that still looks OK)
    Any suggestions or help is appreciated.
    Peter

    Solved the issue, just posting to help others:
    iWeb2 apparently has a different way of storing all images etc. on a page.
    (this problem was with a website that was published to a folder, then uploaded to the proper location).
    After uploading the entire website again (including all subfolders, images, CSS files etc) everything looked back to normal again.
    I will be bringing back in the HTML widgets to see if I still need iWeb Enhancer and Tag to include the codes for statistics etc and will keep you posted.

  • Strange JTable behaviour - everything is highlighted

    Hello all,
    im experiencing some strange JTable behaviour, and im not so sure why. When i run my program, the JTable appears, but all the cells are highlighted in advance. Also, i can now only select one cell at a time. I have set myTable.setSelectionModeListSelectionModel.SINGLE_INTERVAL_SELECTION);  myTable.setCellSelectionEnabled(true);and my renderer code is below. I call the renderer by using the setDefaultRenderer method with(Object.class,myRenderer).
    I have also changed isCellEditable to return true. If i dont use Object.class, and try to use my own custom class, the JTable is not all highlighted, but it doesnt seem to use myRenderer, and when i click on the header of Column A, all cells from column B and beyond become highlight, which is not normal behaviour. I thought the colum you selected should be highlighted.
    Sorry for the long post, i hope the above makes sense...this is really quite bizzare, and im not so sure why this is happening. Thanks for any advice you can give, regards, Rupz
    import javax.swing.*;
    import javax.swing.table.DefaultTableCellRenderer;
    import javax.swing.border.*;
    import java.awt.Component;
    import java.awt.Color;
    import java.awt.Rectangle;
    import java.util.*;
    import java.awt.*;
    public class MyTableCellRenderer extends DefaultTableCellRenderer{
         private Font cellFont;
         private LineBorder  selectBorder;
        private EmptyBorder emptyBorder;
         public MyTableCellRenderer() {
              super();
              setOpaque(true);
              emptyBorder  = new EmptyBorder(1, 2, 1, 2);
              cellFont = new Font("Times", Font.PLAIN, 10);
              setFont(cellFont);
              selectBorder = new LineBorder(Color.red);
         private boolean isHeaderCell(int row, int column){return column == 0;}
         public Component getTableCellRendererComponent (JTable myTable, Object value, boolean isSelected, boolean hasFocus, int row, int column){
              //super.getTableCellRendererComponent(myTable, value, isSelected, hasFocus,row, column);
              if (isSelected){
                   super.setForeground(myTable.getSelectionForeground());
                   super.setBackground(myTable.getSelectionBackground());
                   setBorder(selectBorder);
              else{
                   super.setForeground(myTable.getSelectionForeground());
                   super.setBackground(myTable.getSelectionBackground());
                   setBorder(emptyBorder);
         if (hasFocus) {
              setBorder(selectBorder);
              if (myTable.isCellEditable(row,column)) {
                   super.setForeground(UIManager.getColor("Table.focusCellForeground"));
                   super.setBackground(UIManager.getColor("Table.focusCellBackground"));
         else {setBorder(noFocusBorder);}
         setValue(value, isSelected, hasFocus, row, column);
    //      Color bDis = getBackground();
    //      boolean colourEquals = (bDis != null) && (bDis.equals(myTable.getBackground()) ) & myTable.isOpaque();
    //      setOpaque (!colourEquals);
         return this;
         public void setValue (Object value, boolean hasFocus, boolean isSelected, int row, int column){
              if (value instanceof myCell){
                   myCell foo = (myCell)value;
                   Object data = foo.getValue(row,column);
                   if (isHeaderCell(row, column)) {
                    //label cells are center aligned
                        setHorizontalAlignment(JTextField.CENTER);
                       }else {
                              if (data instanceof Number) {
                                  //numbers are right justified
                            setHorizontalAlignment(JTextField.RIGHT);
                              }else {
                                  //everything else is left justified
                            setHorizontalAlignment(JTextField.LEFT);
                          //value to display in table
                       setText((data == null) ? "" : data.toString());
               else {
                          //not cell object so render with toString of that object
                          setText((value == null) ? "" : value.toString());

    Hi VV!
    thanks for the reply - now the table isnt all highlight when loaded, but as for cell celection..thats a different matter. I did have myTable.setCellSelectionEnabled(true); but no, the cell behaviour is really, eally weird, quite hard to explain, but here goes.
    If i try to select cell D1 and D2 - D1 is selected, D2, E2,F2 and so on become selected. If i try to add D3 to the mix, the entire row 3 is selected, and as soon as i let go of the mouse button, the entire table except row 1 gets selected. really really weird. Below is my tableModel and what i do to the table. Thanks for your help,
    regards
    Rupz
    myTable.setModel(new myTableModel(this,40,40));
         // Create a row-header to display row numbers.
         // This row-header is made of labels whose Borders,
         // Foregrounds, Backgrounds, and Fonts must be
         // the one used for the table column headers.
         // Also ensure that the row-header labels and the table
         // rows have the same height.
         numRows = myTable.getColumnCount();
         numCols = myTable.getRowCount();
         TableColumn       aColumn   = myTable.getColumnModel().getColumn(0);
         TableCellRenderer aRenderer = myTable.getTableHeader().getDefaultRenderer();
         Component aComponent = aRenderer.getTableCellRendererComponent(myTable, aColumn.getHeaderValue(), false, false, -1, 0);
         Font  aFont       = aComponent.getFont();
         Color aBackground = aComponent.getBackground();
         Color aForeground = aComponent.getForeground();
         Border      border  = (Border)UIManager.getDefaults().get("TableHeader.cellBorder");
         FontMetrics metrics = getFontMetrics(cellFont);
          * Creating a panel to be used as the row header.
          * Since I'm not using any LayoutManager,
          * a call to setPreferredSize().
         JPanel pnl = new JPanel((LayoutManager)null);
         Dimension dim = new Dimension( 40,  rowHeight*numRows);
         pnl.setPreferredSize(dim);
         // Adding the row header labels
         dim.height = rowHeight;
         for (int ii=0; ii<numRows; ii++) {
           JLabel lbl = new JLabel(Integer.toString(ii+1), SwingConstants.CENTER);
           lbl.setFont(aFont);
           lbl.setBackground(aBackground);
           lbl.setForeground(aForeground);
           lbl.setBorder(border);
           lbl.setBounds(0, ii*dim.height, dim.width, dim.height);
           pnl.add(lbl);
         JViewport vp = new JViewport();
         dim.height = rowHeight*numRows;
         vp.setViewSize(dim);
         vp.setView(pnl);
         // Set resize policy and make sure
         // the table's size is tailored
         // as soon as it gets drawn.
         myTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
         Dimension dimScpViewport = myTable.getPreferredScrollableViewportSize();
         if (numRows>30) dimScpViewport.height = 30*rowHeight;
         else           dimScpViewport.height  = numRows*rowHeight;
         if (numCols>15)
           dimScpViewport.width = 15*myTable.getColumnModel().getTotalColumnWidth()/numCols;
         else
           dimScpViewport.width = myTable.getColumnModel().getTotalColumnWidth();
         myTable.setPreferredScrollableViewportSize(dimScpViewport);
         myTable.repaint();
    And the table model
    public class myTableModel extends DefaultTableModel {
         private MySpread mySpreadsheet;
         public myTableModel (MySpread aSpreadsheet){
              super();
              mySpreadsheet = aSpreadsheet;
         public myTableModel (MySpread aSpreadsheet, int rows,int cols){
              super(rows,cols);
    //                 for(int x = 0; x < rows; x++) {
    //                      myCell temp = new myCell(new Integer(x+1));
    //                  super.setValueAt(temp, x, 0);
            for(int x =0 ; x < rows; x++)
             for (int y = 0; y < cols; y++)
              // we initialize it here
              super.setValueAt(new myCell(rows,cols,("")),x,y);
         mySpreadsheet = aSpreadsheet;
         public boolean isCellEditable(int row, int column) {return true;}  
         

  • Strange Portal Behaviour

    Hi All,
    I'm having problems with a portal since I added an applet to one of the portlets using an HTML <OBJECT> tag. The applet requires a java console to load up and once this is complete, for some reason the default portlet of the portal is refreshed (More precisely the begin action is fired).
    I'm assuming that this is related to the java console because repeating the action above once the console has loaded does not cause the default portlet to be refreshed again a second time.
    Has anyone experienced similar behaviour?
    If it helps, the code in the jsp is:
    <netui-data:repeater dataSource="{pageFlow.pieChart}">
    <netui-data:repeaterHeader>
    <OBJECT classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
    height="200" width="650" hspace="10"
    standby="Loading Requested Chart........">
    <PARAM name="code" value="X_PieChart.class">
    <PARAM name="codebase" value="/mpsportal/javaScript/">
    <PARAM name="image" value="">
    <PARAM name="forecolor" value="555566">
    <PARAM name="activecolor" value="cc0000">
    <PARAM name="backcolor" value="ffffbe">
    <PARAM name="activecolor_shadow" value="ff0000">
    <PARAM name="distance" value="8">
    </netui-data:repeaterHeader>
    <netui-data:repeaterItem>
    <PARAM NAME='p<netui:content value="{container.index}"/>' value='<netui:content value="{container.item.name}"/>#<netui:content value="{container.item.value}"/>#0000AA#0000FF#<netui:content value="{container.item.name}"/> - <netui:content value="{container.item.value}"/>##'>
    </netui-data:repeaterItem>
    <netui-data:repeaterFooter>
    <PARAM name="showratios" value="1">
    <PARAM name="deep" value="8">
    <PARAM name="font" value="verdana#plain#12">
    <PARAM name="title" value="">
    <PARAM name="titlealign" value="2">
    </OBJECT>
    </netui-data:repeaterFooter>
    </netui-data:repeater>

    Hi all,
    I am closing this thread as i came to know that i cannot open two threads parallely, about an issue  in different forums .
    If u have more suggetions reg this issue, please post them in the following thread :
    Strange Portal Behaviour in Internet Explorer 8
    Regards,
    Anupama

  • Strange Text Behaviour

    Hi there,
    So strange text behaviour here: http://screencast.com/t/atGbhTznY. I think the video is self explanatory. In Photoshop CS5 it shows the text size properly,
    Desired effect or defect ?
    Regards,
    SK

    Pattie,
    Not to answer for Simeon, but this is different behavior in PsCS6.  Say you scale two  text layers (for example- 10 pt scaled 200%) and commit the scale. When you target each layer individually, the pt size reflects the scale (so it will appear around 20 pt). However. if you target BOTH text layers the font size is indicated as 10 pt - the original size before the scale. One would expect if you target 2 text layers of same font and size, the Character Panel would show the correct size, as happens in PsCS5.
    Steps to reproduce:
    Open default RGB 8 bit document.
    Select Type tool at default settings 12pt type. Type a word and commit type.
    Type another word at same font and commit (you’ll now have two text layers, same font and size)
    Target both text layers and Edit>Transform>Scale 200%. Commit the transform.
    When each layer is targeted individually, the Type Tool Option bar (or Character Panel) shows the new, scaled size of 24pt
    Shift click to target both the 24pt text layers… now Type Tool Option bar reverts to show 12 pt.
    Expected behavior: that the Option Bar would show the new pt size of the two layers.

  • When creating PDF from web page why does text appears as strange font not readable?

    I am using Acrobat Standard, ver. 9.5.5.  Frequently if I save a web page on either Firefox or Internet Explorer by printing to my Adobe PDF driver, much of the text is rendered in a strange font rather than in the font that appears on the web page.  The only work-around I have found is to print the document to a printer and then scan the printed page to create a PDF.  Is there a solution to this problem?

    The OS may be an issue so what are you using Win7, Win8, XP, MAC, or other? In printing, what job settings are you using? When you open the PDF, check the properties (ctrl-D) to see if the fonts are embedded or not. The problem is likely related to the font not being embedded. The embedding may be a license issue for the font. Acrobat will only embed fonts that are properly licensed. You might try the Print or Press job settings that are a bit better to embedding all fonts.

  • Strange Fonts in labview graph's plot legend.

    Hello All,
        I am running labview 7.1 on a Windows XP machine and
    the default and only language is English (US). Verified this under
    Control Panel > Regional Settings.
        When I run a VI, I get strange fonts in the plot
    legend. They keep updating as the VI runs. Here is a screen shot of the
    plot legend:
    I change the font to something I can read, save the VI and run it again
    and it automatically changes to this unreadable font again. Any ideas
    on what I can do? Thanks.
    KB

    Is it just the font that is off, or are these actually non-printable characters?
    Are you graphing e.g. dynamic data types? Do you possibly have weird names for your signals?
    LabVIEW Champion . Do more with less code and in less time .

  • Strange System Font in Dreamweaver.  After I installed Dreamweaver CS4 on my Mac, it loaded this strange font as seen in the photo attached.  Anyone know how to fix this?  I have uninstalled/reinstalled many times.  No prob w/ other CS4 programs.

    Strange System Font in Dreamweaver.  After I installed Dreamweaver CS4 on my Mac, it loaded this strange font as seen in the photo attached.  Anyone know how to fix this?  I have uninstalled/reinstalled many times to no avail.  There are no other problems with w/ other CS4 programs, they all have the normal system font.  I can't figure it out.  Thanks!

    Funny fonts issue in PI etc.,
    http://kb2.adobe.com/cps/405/kb405153.html
    Fonts in Dreamweaver panels display incorrectly
    http://kb2.adobe.com/cps/138/tn_13862.html
    Nadia
    Adobe Community Expert : Dreamweaver
    Unique CSS Templates | Tutorials | SEO Articles
    http://www.DreamweaverResources.com
    Web Design & Development
    http://www.perrelink.com.au
    http://twitter.com/nadiap

  • Strange memory behaviour using the System.Collections.Hashtable in object reference

    Dear all,
    Recently I came across a strange memory behaviour when comparing the system.collections.hashtable versus de scripting.dictionary object and thought to analyse it a bit in depth. First I thought I incorrectly destroyed references to the class and
    child classes but even when properly destroying them (and even implemented a "SafeObject" with deallocate method) I kept seeing strange memory behaviour.
    Hope this will help others when facing strange memory usage BUT I dont have a solution to the problem (yet) suggestions are welcome.
    Setting:
    I have a parent class that stores data in child classes through the use of a dictionary object. I want to store many differenct items in memory and fetching or alteging them must be as efficient as possible using the dictionary ability of retrieving key
    / value pairs. When the child class (which I store in the dictionary as value) contains another dictionary object memory handeling is as expected where all used memory is release upon the objects leaving scope (or destroyed via code). When I use a system.collection.hashtable
    no memory is released at all though apears to have some internal flag that marks it as useable for another system.collection.hashtable object.
    I created a small test snippet of code to test this behaviour with (running excel from the Office Plus 2010 version) The snippet contains a module to instantiate the parent class and child classes that will contain the data. One sub will test the Hash functionality
    and the other sub will test the dictionary functionality.
    Module1
    Option Explicit
    Sub testHash()
    Dim Parent As parent_class
    Dim d_Count As Double
    'Instantiate parent class
    Set Parent = New parent_class
    'Create a child using the hash collection object
    Parent.AddChildHash "TEST_hash"
    Dim d_CycleCount As Double
    d_CycleCount = 50000
    'Add dummy data records to the child container with x amount of data For d_Count = 0 To d_CycleCount
    Parent.ChildContainer("TEST_hash").InsertDataToHash CStr(d_Count), "dummy data"
    Next
    'Killing the parent when it goes out of scope should kill the childs. (Try it out and watch for the termination debug messages)
    'According to documentation and debug messages not really required!
    Set Parent.ChildContainer("TEST_hash") = Nothing
    'According to documentation not really as we are leaving scope but just to be consistent.. kill the parent!
    Set Parent = Nothing
    End Sub
    Sub testDict()
    Dim Parent As parent_class
    Dim d_Count As Double
    'Instantiate parent class
    Set Parent = New parent_class
    'Create a child using the dictionary object
    Parent.AddChildDict "TEST_dict"
    Dim d_CycleCount As Double
    d_CycleCount = 50000
    'Blow up the memory with x amount of records
    Dim s_SheetCycleCount As String
    s_SheetCycleCount = ThisWorkbook.Worksheets("ButtonSheet").Range("K2").Value
    If IsNumeric(s_SheetCycleCount) Then d_CycleCount = CDbl(s_SheetCycleCount)
    'Add dummy data records to the child container
    For d_Count = 0 To d_CycleCount
    Parent.ChildContainer("TEST_dict").InsertDataToDict CStr(d_Count), "dummy data"
    Next
    'Killing the parent when it goes out of scope should kill the childs. (Try it out and watch for the termination debug messages)
    'According to documentation and debug messages not really required!
    Set Parent.ChildContainer("TEST_dict") = Nothing
    'According to documentation not really as we are leaving scope but just to be consistent.. kill the parent!
    Set Parent = Nothing
    End Sub
    parent_class:
    Option Explicit
    Public ChildContainer As Object
    Private Counter As Double
    Private Sub Class_Initialize()
    Debug.Print "Parent initialized"
    Set ChildContainer = CreateObject("Scripting.dictionary")
    End Sub
    Public Sub AddChildHash(ByRef ChildKey As String)
    If Not ChildContainer.Exists(ChildKey) Then
    Dim TmpChild As child_class_hashtable
    Set TmpChild = New child_class_hashtable
    ChildContainer.Add ChildKey, TmpChild
    Counter = Counter + 1
    Set TmpChild = Nothing
    End If
    End Sub
    Public Sub AddChildDict(ByRef ChildKey As String)
    If Not ChildContainer.Exists(ChildKey) Then
    Dim TmpChild As child_class_dict
    Set TmpChild = New child_class_dict
    ChildContainer.Add ChildKey, TmpChild
    Counter = Counter + 1
    Set TmpChild = Nothing
    End If
    End Sub
    Private Sub Class_Terminate()
    Debug.Print "Parent being killed, first kill all childs (if there are any left!) - muahaha"
    Set ChildContainer = Nothing
    Debug.Print "Parent killed"
    End Sub
    child_class_dict
    Option Explicit
    Public MemmoryLeakObject As Object
    Private Sub Class_Initialize()
    Debug.Print "Child using Scripting.Dictionary initialized"
    Set MemmoryLeakObject = CreateObject("Scripting.Dictionary")
    End Sub
    Public Sub InsertDataToDict(ByRef KeyValue As String, ByRef DataValue As String)
    If Not MemmoryLeakObject.Exists(KeyValue) Then MemmoryLeakObject.Add KeyValue, DataValue
    End Sub
    Private Sub Class_Terminate()
    Debug.Print "Child using Scripting.Dictionary terminated"
    Set MemmoryLeakObject = Nothing
    End Sub
    child_class_hash:
    Option Explicit
    Public MemmoryLeakObject As Object
    Private Sub Class_Initialize()
    Debug.Print "Child using System.Collections.Hashtable initialized"
    Set MemmoryLeakObject = CreateObject("System.Collections.Hashtable")
    End Sub
    Public Sub InsertDataToHash(ByRef KeyValue As String, ByRef DataValue As String)
    If Not MemmoryLeakObject.ContainsKey(KeyValue) Then MemmoryLeakObject.Add KeyValue, DataValue
    End Sub
    Private Sub Class_Terminate()
    Debug.Print "Child using System.Collections.Hashtable terminated"
    Set MemmoryLeakObject = Nothing
    End Sub
    Statistics:
    TEST: (Chronologically ordered)
    1.1 Excel starting memory: 25.324 kb approximately
    Max memory usage after hash (500.000 records) 84.352 kb approximately
    Memory released: 0 %
    1.2 max memory usages after 2nd consequtive hash usage 81.616 kb approximately
    "observation:
    - memory is released then reused
    - less max memory consumed"
    1.3 max memory usages after 3rd consequtive hash usage 80.000 kb approximately
    "observation:
    - memory is released then reused
    - less max memory consumed"
    1.4 Running the dictionary procedure after any of the hash runs will start from the already allocated memory
    In this case from 80000 kb to 147000 kb
    Close excel, free up memory and restart excel
    2.1 Excel starting memory: 25.324 kb approximately
    Max memory usage after dict (500.000 records) 90.000 kb approximately
    Memory released: 91,9%
    2.2 Excel starting memory 2nd consequtive dict run: 27.552 kb approximately
    Max memory usage after dict (500.000 records) 90.000 kb approximately
    Memory released: 99,4%
    2.3 Excel starting memory 3rd consequtive dict run: 27.712 kb approximately
    Max memory usage after dict (500.000 records) 90.000 kb approximately
    Memory released:

    Hi Cor,
    Thank you for going through my post and took the time to reply :) Most apreciated. The issue I am facing is that the memory is not reallocated when using mixed object types and is not behaving the same. I not understand that .net versus the older methods
    use memory allocation differently and perhaps using the .net dictionary object (in stead of the scripting.dictionary) may lead to similar behaviour. {Curious to find that out -> put to the to do list of interesting thingies to explore}
    I agree that allocated memory is not a bad thing as the blocks are already assigned to the program and therefore should be reallocated with more performance. However the dictionary object versus hashtable perform almost identical (and sometimes even favor
    the dictionary object)
    The hashtable is clearly the winner when dealing with small sets of data.
    The issue arises when I am using the hash table in conjunction with another type, for example a dictionary, I see that the dictionary object's memory is stacked on top of the claimed memory space of the hashtable. It appears that .net memory allocation and
    reuse is for .net references only. :) (Or so it seems)
    In another example I got with the similar setup, I see that the total used memory is never released or reclaimed and leakage of around 20% allocated memory remains to eventually crash the system with the out of memory message. (This is when another class
    calls the parent class that instantiates the child class but thats not the point of the question at hand)
    This leakage drove me to investigate and create the example of this post in the first place. For the solution with the class -> parent class -> child class memory leak I switched all to dictionaries and no leakage occurs anymore but nevertheless thought
    it may be good to share / ask if anyone else knows more :D (Never to old to learn something new)

  • Strange Finder behaviour since installing Mountain Lion

    I've been experiencing some strange finder behaviour since updating to Mountain Lion. Folders take several seconds to open after clicking on them (and sometimes won't open at all) and files cannot be moved around the desktop or dragged on to an app. However, it is possible to open a file by clicking on it. I've tried re-booting with Snow Leopard and everything seems OK, but as soon as I go back to ML, the problem starts again.

    Library is a folder, not a file. There're more than one Library folders, one at the root and one for each user in your Mac. All of them are hidden, this is why you can't find them. But you can see their contents using
    Finder Menu > Go > Go to Folder
    And then type:
    ~/Library
    for your Library Folder
    -or-
    /Library
    for the root Library folder.

  • Strange repaint behaviour with JList & Keyboard actions

    Hi everyone,
    This is my first post to the forum. You guys have been a great help in the past and I hope to contribute more in the future.
    Anyways, I've encountered some strange repainting behaviour with a JDialog that uses a JList and a JButton. The dialog is fairly straight-forward and basically this is how it works (like an open file dialog - yes I'm implementing my own filechooser of sorts):
    * JList lists a number of simple items that the user can select from.
    * Once a selection is made, an Open button (JButton) is enabled.
    * <ENTER> key is registered (using registerKeyboardAction()) with a JPanel which is used as the main content pane in the dialog.
    * The user can either click on the Open Button or hit the <ENTER> key which then closes the dialog and runs whatever logic that needs to.
    Now, the repaint problem comes in when:
    1. User selects an item.
    2. User hits the <ENTER> button
    3. Dialog closes
    4. User brings the dialog back up. This entails reloading the list by removing all elements from the list and adding new ones back in.
    5. Now... if the user uses the mouse to select an item lower in the list than what was done in step #1, the selection is made, but the JList doesn't repaint to show that the new selection was made.
    I didn't include a code sample because the dialog setup is totally straight-forward and I'm not doing anything trick (I've been doing this kind of thing for years now).
    If I remove the key registration for the <ENTER> key from the dialog, this problem NEVER happens. Has anyone seen anything like this? It's a minor problem since my workaround is to use a ListSelectionListener which manually calls repaint() on the JList inside the valueChanged() method.
    Just curious,
    Huy

    Oh, my bad. I'm actually using a JToggleButton and not a JButton, so the getRootPane().setDefaultButton() doesn't apply because it only takes JButton as an input param. I wonder why it wasn't implemented to take AbstractButton. hmmm.

  • Strange layout behaviour with TilePane

    here is the demo
    1.rootLayout have 2 child,controlbox and contentLayout
    2.3 button on controlbox
    3.contentLayout will add content,when press deffrent button on controlbox
    4.watch button "Add TilePane" , strange layout behaviour , what is the matter?
    layout picture
    |--------------------------------|                 
    |           |                    |                 
    |           |                    |                 
    |           |                    |                 
    |           |                    |                 
    |controlbox |  contentLayout     |                 
    | (VBox)    |   (StackPane)      |                 
    |           |                    |                 
    |           |                    |                 
    |           |                    |                 
    |           |                    |                 
    |--------------------------------|               
                                            the code
    import javafx.application.Application;
    import javafx.event.EventHandler;
    import javafx.geometry.Pos;
    import javafx.scene.Group;
    import javafx.scene.Scene;
    import javafx.scene.control.Button;
    import javafx.scene.control.Label;
    import javafx.scene.control.ListView;
    import javafx.scene.input.MouseEvent;
    import javafx.scene.layout.StackPane;
    import javafx.scene.layout.TilePane;
    import javafx.scene.layout.VBox;
    import javafx.stage.Stage;
    public class testTilePaneLayout  extends Application {
         StackPane contentLayout = new StackPane();
         //add content with 2 Button
         public void addContent(){
              VBox vbox = new VBox();
              contentLayout.getChildren().clear();
              contentLayout.getChildren().add(vbox);
              StackPane.setAlignment(vbox,Pos.CENTER);
              Button btn = new Button("Button1");     
              Button btn2= new Button("Button2");
              vbox.getChildren().add(btn);
              vbox.getChildren().add(btn2);
         //add content with 2 Button & 1 ListView
         public void addListViewContent(){
              VBox vbox = new VBox();
              contentLayout.getChildren().clear();
              contentLayout.getChildren().add(vbox);
              StackPane.setAlignment(vbox,Pos.CENTER);
              Button btn = new Button("Button1");     
              Button btn2= new Button("Button2");     
              vbox.getChildren().add(btn);
              vbox.getChildren().add(btn2);
              @SuppressWarnings("rawtypes")
              ListView listView = new ListView();
              vbox.getChildren().add(listView);
         //add content with 2 Button & 1 TilePane
         public void addTilePaneContent(){
              VBox vbox = new VBox();
              contentLayout.getChildren().clear();
              contentLayout.getChildren().add(vbox);
              StackPane.setAlignment(vbox,Pos.CENTER);
              Button btn = new Button("Button1");     
              Button btn2= new Button("Button2");     
              vbox.getChildren().add(btn);
              vbox.getChildren().add(btn2);
              TilePane tilePane = new TilePane();
              tilePane.setMaxSize(100,100);
              Label lbl = new Label("Label on TilePane");
              tilePane.getChildren().add(lbl);
              vbox.getChildren().add(tilePane);
         public void start(Stage stage) {
              stage.setResizable(false);
              stage.centerOnScreen();
              Group root = new Group();
              Scene scene = new Scene(root,800,600);     
              stage.setScene(scene);
              //root  Layout =  StackPane
              StackPane rootLayout = new StackPane();
              root.getChildren().add(rootLayout);
              rootLayout.setMinSize(800,600);
              rootLayout.setMaxSize(800,600);
              //content  StackPane
              rootLayout.getChildren().add(contentLayout);
              contentLayout.setMinSize(100, 100);
              contentLayout.setMaxSize(200, 200);
              StackPane.setAlignment(contentLayout,Pos.CENTER);
              //control  VBox
              VBox controlBox = new VBox();
              rootLayout.getChildren().add(controlBox);     
              controlBox.setMaxSize(100, 200);
              StackPane.setAlignment(controlBox,Pos.CENTER_LEFT);
              //3 control  button
              Button btn1 = new Button("Add button");     
              Button btn2= new Button("Add Listview");
              Button btn3= new Button("Add TilePane");
              controlBox.getChildren().add(btn1);
              controlBox.getChildren().add(btn2);
              controlBox.getChildren().add(btn3);
              btn1.setOnMousePressed(new EventHandler<MouseEvent>() {
                   @Override
                   public void handle(MouseEvent arg0) {
                        addContent();     
              btn2.setOnMousePressed(new EventHandler<MouseEvent>() {
                   @Override
                   public void handle(MouseEvent arg0) {
                        addListViewContent();     
              btn3.setOnMousePressed(new EventHandler<MouseEvent>() {
                   @Override
                   public void handle(MouseEvent arg0) {
                        addTilePaneContent();     
              stage.show();
         public static void main(String[] args) {
              Application.launch(args);
    }Edited by: noregister on Oct 4, 2011 11:30 AM
    Edited by: noregister on Oct 4, 2011 11:31 AM

    Oh, my bad. I'm actually using a JToggleButton and not a JButton, so the getRootPane().setDefaultButton() doesn't apply because it only takes JButton as an input param. I wonder why it wasn't implemented to take AbstractButton. hmmm.

Maybe you are looking for