protected static void fixFonts(Workbook workbook) { if (!JvmBugs.hasLineBreakMeasurerBug()) return; for (int i = workbook.getNumberOfFonts() - 1; i >= 0; i--) { Font f = workbook.getFontAt((short) 0); if ("Calibri".equals(f.getFontName())) { f.setFontName("Lucida Sans"); } else if ("Cambria".equals(f.getFontName())) { f.setFontName("Lucida Bright"); } } }
/** Copy text attributes from the supplied Font to Java2D AttributedString */ private static void copyAttributes(Font font, AttributedString str, int startIdx, int endIdx) { str.addAttribute(TextAttribute.FAMILY, font.getFontName(), startIdx, endIdx); str.addAttribute(TextAttribute.SIZE, (float) font.getFontHeightInPoints()); if (font.getBoldweight() == Font.BOLDWEIGHT_BOLD) str.addAttribute(TextAttribute.WEIGHT, TextAttribute.WEIGHT_BOLD, startIdx, endIdx); if (font.getItalic()) str.addAttribute(TextAttribute.POSTURE, TextAttribute.POSTURE_OBLIQUE, startIdx, endIdx); if (font.getUnderline() == Font.U_SINGLE) str.addAttribute(TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_ON, startIdx, endIdx); }
@Override protected JComponent getRowPresentation( ParameterTableModelItemBase<ParameterInfoImpl> item, boolean selected, final boolean focused) { final JPanel panel = new JPanel(new BorderLayout()); final String typeText = item.typeCodeFragment.getText(); final String separator = StringUtil.repeatSymbol(' ', getTypesMaxLength() - typeText.length() + 1); String text = typeText + separator + item.parameter.getName(); final String defaultValue = item.defaultValueCodeFragment.getText(); String tail = ""; if (StringUtil.isNotEmpty(defaultValue)) { tail += " default value = " + defaultValue; } if (item.parameter.isUseAnySingleVariable()) { if (StringUtil.isNotEmpty(defaultValue)) { tail += ";"; } tail += " Use any var."; } if (!StringUtil.isEmpty(tail)) { text += " //" + tail; } final EditorTextField field = new EditorTextField(" " + text, getProject(), getFileType()) { @Override protected boolean shouldHaveBorder() { return false; } }; Font font = EditorColorsManager.getInstance().getGlobalScheme().getFont(EditorFontType.PLAIN); font = new Font(font.getFontName(), font.getStyle(), 12); field.setFont(font); if (selected && focused) { panel.setBackground(UIUtil.getTableSelectionBackground()); field.setAsRendererWithSelection( UIUtil.getTableSelectionBackground(), UIUtil.getTableSelectionForeground()); } else { panel.setBackground(UIUtil.getTableBackground()); if (selected && !focused) { panel.setBorder(new DottedBorder(UIUtil.getTableForeground())); } } panel.add(field, BorderLayout.WEST); return panel; }
protected SFont createZssFont(Font poiFont) { SFont font = book.createFont(true); // font font.setName(poiFont.getFontName()); font.setBoldweight(PoiEnumConversion.toBoldweight(poiFont.getBoldweight())); font.setItalic(poiFont.getItalic()); font.setStrikeout(poiFont.getStrikeout()); font.setUnderline(PoiEnumConversion.toUnderline(poiFont.getUnderline())); font.setHeightPoints(poiFont.getFontHeightInPoints()); font.setTypeOffset(PoiEnumConversion.toTypeOffset(poiFont.getTypeOffset())); font.setColor(book.createColor(BookHelper.getFontHTMLColor(workbook, poiFont))); return font; }
@Test public void shouldBuildFont() throws Exception { styledText = new StyledText("Blah"); styledText.setupStyles( new HashMap<String, RichStyle>(), new RichStyle(), new MockStyleObserver()); styledText.getStyle().setFontFace("Courier"); styledText.getStyle().setFontStyle("plain"); styledText.getStyle().setFontSize(12); Font font = styledText.getFont(); final String name = font.getFontName(); assertTrue( "Expected 'Courier' or 'Monospace.plain' but got '" + name + "'", "Courier".equals(name) || "Monospaced.plain".equals(name)); assertEquals(12, font.getSize()); assertEquals(true, font.isPlain()); }
@Override public String toString(TextStyle ts) { StringBuilder obj = new StringBuilder(); // Store font info Font f = ts.getFont(); if (f != null) { obj.append(f.getFontName(Locale.ROOT)); if (f.getStyle() != Font.PLAIN) { obj.append('-'); if ((f.getStyle() & Font.BOLD) == Font.BOLD) { obj.append("bold"); } if ((f.getStyle() & Font.ITALIC) == Font.ITALIC) { obj.append("italic"); } } obj.append('-'); obj.append(f.getSize()); } obj.append(';'); // Store foreground Color fg = ts.getForeground(); if (fg != null) { obj.append(fg.getRGB()); } obj.append(';'); // Store background Color bg = ts.getBackground(); if (bg != null) { obj.append(bg.getRGB()); } return obj.toString(); }
private int getColumnWidth(int index) { int letters = getTypesMaxLength() + (index == 0 ? 1 : getNamesMaxLength() + 2); Font font = EditorColorsManager.getInstance().getGlobalScheme().getFont(EditorFontType.PLAIN); font = new Font(font.getFontName(), font.getStyle(), 12); return letters * Toolkit.getDefaultToolkit().getFontMetrics(font).stringWidth("W"); }
public GUI() { // Sets the text and initiates the objects for the buttons playButton = new JButton("PLAY"); exitButton = new JButton("QUIT"); howToPlay = new JButton("HOW TO PLAY"); quitEducation = new JButton("Quit education"); rollDice = new JButton("ROLL THE DICE"); saveCareerProspects = new JButton("Save career prospects"); exitApplication = new JButton("Exit application"); // The main container for the JFrames // container for frame JPanel welcome = new JPanel(); spalshScreen.setContentPane(welcome); JPanel container = new JPanel(); frame.setContentPane(container); // container for frame 2 JPanel container2 = new JPanel(); container2.setBackground(Color.WHITE); frame2.setContentPane(container2); // container for frame 3 JPanel container3 = new JPanel(); container3.setBackground(Color.WHITE); frame3.setContentPane(container3); loading = new javax.swing.JLabel(); loading.setIcon( new javax.swing.ImageIcon(getClass().getClassLoader().getResource("images/hexLoader.gif"))); // start panel with play button and exit button // for frame playerName = new javax.swing.JTextField(); playerName.setText("Player"); playerName.setLocation(100, 100); playerName.setPreferredSize(new Dimension(100, 100)); playerName.setHorizontalAlignment(JTextField.CENTER); JPanel frame = new JPanel(); frame.add(playerName); frame.add(playButton); playButton.setPreferredSize(new Dimension(200, 100)); frame.add(exitButton); exitButton.setPreferredSize(new Dimension(200, 100)); frame.add(howToPlay); howToPlay.setPreferredSize(new Dimension(200, 100)); // board image start screen start = new javax.swing.JLabel(); start.setIcon( new javax.swing.ImageIcon(getClass().getClassLoader().getResource("images/logo2.png"))); // for frame 2 JPanel frame2 = new JPanel(); frame2.add(quitEducation); /* Start of creating the board */ JButton ordinaryButton; int row = 10, column = 10; frame2.setLayout(new GridBagLayout()); GridBagConstraints gbc = new GridBagConstraints(); gbc.fill = GridBagConstraints.HORIZONTAL; gbc.insets = new Insets(3, 3, 3, 3); for (int j = 1; j <= row; j++) { for (int i = 0; i < column; i++) { ordinaryButton = new JButton(); if (i == column - 1 && j == row) doActiveTile(ordinaryButton); if (j == 1) { // top line gbc.ipady = 30; gbc.gridx = i; gbc.gridy = j; gbc.gridwidth = 1; addToList(ordinaryButton, TOP); frame2.add(ordinaryButton, gbc); // add in the frame } else { if (j == 10) { // bottom line gbc.ipady = 30; gbc.gridx = i; gbc.gridy = j; gbc.gridwidth = 1; addToList(ordinaryButton, BOTTOM); frame2.add(ordinaryButton, gbc); // add in the frame } else { if (i == 0) { // left-hand side column gbc.ipady = 30; gbc.gridx = i; gbc.gridy = j; gbc.gridwidth = 1; addToList(ordinaryButton, LEFT); frame2.add(ordinaryButton, gbc); // add in the frame } else { if (i == 9) { // right-hand side column gbc.ipady = 30; gbc.gridx = i; gbc.gridy = j; gbc.gridwidth = 1; addToList(ordinaryButton, RIGHT); frame2.add(ordinaryButton, gbc); // add in the frame } } } } } } /* End of creating the board */ /* adding constraints for roll dice and Quit education */ gbc.ipady = 30; gbc.gridx = 2; gbc.gridy = 4; gbc.gridwidth = 2; frame2.add(rollDice, gbc); // add in the frame gbc.ipady = 30; gbc.gridx = 6; gbc.gridy = 4; gbc.gridwidth = 2; frame2.add(quitEducation, gbc); // add in the frame /* END OF adding constraints for roll dice and Quit education */ // for frame 3 JPanel frame3 = new JPanel(); frame3.setLayout(new GridBagLayout()); gbc = new GridBagConstraints(); gbc.fill = GridBagConstraints.HORIZONTAL; gbc.insets = new Insets(3, 3, 3, 3); gbc.ipady = 30; gbc.gridx = 1; gbc.gridy = 1; gbc.gridwidth = 4; frame3.add(saveCareerProspects, gbc); frame3.setBackground(Color.WHITE); skillsLabel = new javax.swing.JLabel("SKILLS"); skillsLabel.setBorder(BorderFactory.createMatteBorder(1, 5, 1, 1, Color.ORANGE)); Font font = skillsLabel.getFont(); // same font but bold int fontSize = font.getSize(); fontSize += 5; Font boldFont = new Font(font.getFontName(), Font.BOLD, fontSize); skillsLabel.setFont(boldFont); gbc.ipady = 10; gbc.gridx = 1; gbc.gridy = 3; gbc.gridwidth = 1; frame3.add(skillsLabel, gbc); mathematicsLabel = new javax.swing.JLabel(); mathematicsLabel.setBorder(BorderFactory.createMatteBorder(1, 5, 1, 1, Color.PINK)); gbc.gridx = 1; gbc.gridy = 4; gbc.gridwidth = 1; frame3.add(mathematicsLabel, gbc); scienceLabel = new javax.swing.JLabel(); scienceLabel.setBorder(BorderFactory.createMatteBorder(1, 5, 1, 1, Color.CYAN)); gbc.gridx = 1; gbc.gridy = 5; gbc.gridwidth = 1; frame3.add(scienceLabel, gbc); computerScienceLabel = new javax.swing.JLabel(); computerScienceLabel.setBorder(BorderFactory.createMatteBorder(1, 5, 1, 1, Color.green)); gbc.gridx = 1; gbc.gridy = 6; gbc.gridwidth = 1; frame3.add(computerScienceLabel, gbc); geographyLabel = new javax.swing.JLabel(); geographyLabel.setBorder(BorderFactory.createMatteBorder(1, 5, 1, 1, Color.RED)); gbc.gridx = 1; gbc.gridy = 7; gbc.gridwidth = 1; frame3.add(geographyLabel, gbc); historyLabel = new javax.swing.JLabel(); historyLabel.setBorder(BorderFactory.createMatteBorder(1, 5, 1, 1, Color.BLACK)); gbc.gridx = 1; gbc.gridy = 8; gbc.gridwidth = 1; frame3.add(historyLabel, gbc); gbc.ipady = 30; gbc.gridx = 1; gbc.gridy = 9; gbc.gridwidth = 4; frame3.add(exitApplication, gbc); gbc.ipady = 10; careersLabel = new javax.swing.JLabel("CAREER PROSPECTS", SwingConstants.RIGHT); gbc.gridx = 3; gbc.gridy = 3; gbc.gridwidth = 1; careersLabel.setFont(boldFont); frame3.add(careersLabel, gbc); secondColMaths = new javax.swing.JLabel(mathematicsCareer[0], SwingConstants.RIGHT); gbc.gridx = 3; gbc.gridy = 4; gbc.gridwidth = 1; frame3.add(secondColMaths, gbc); secondColScience = new javax.swing.JLabel(scienceCareer[0], SwingConstants.RIGHT); gbc.gridx = 3; gbc.gridy = 5; gbc.gridwidth = 1; frame3.add(secondColScience, gbc); secondColCompScience = new javax.swing.JLabel(computerScienceCareer[0], SwingConstants.RIGHT); gbc.gridx = 3; gbc.gridy = 6; gbc.gridwidth = 1; frame3.add(secondColCompScience, gbc); secondColGeography = new javax.swing.JLabel(geographyCareer[0], SwingConstants.RIGHT); gbc.gridx = 3; gbc.gridy = 7; gbc.gridwidth = 1; frame3.add(secondColGeography, gbc); secondColHistory = new javax.swing.JLabel(historyCareer[0], SwingConstants.RIGHT); gbc.gridx = 3; gbc.gridy = 8; gbc.gridwidth = 1; frame3.add(secondColHistory, gbc); JLabel skills = new javax.swing.JLabel(); skills.setIcon( new javax.swing.ImageIcon(getClass().getClassLoader().getResource("images/small.jpg"))); gbc.gridx = 1; gbc.gridy = 1; gbc.gridheight = 9; gbc.gridwidth = 3; frame3.add(skills, gbc); JLabel backgroundImage = new javax.swing.JLabel(); backgroundImage.setIcon( new javax.swing.ImageIcon(getClass().getClassLoader().getResource("images/logoSmall.jpg"))); gbc.gridx = 3; gbc.gridy = 2; gbc.gridheight = 2; gbc.gridwidth = 3; frame2.setBackground(Color.WHITE); frame2.add(backgroundImage, gbc); JLabel rollDiceImage = new javax.swing.JLabel(); rollDiceImage.setIcon( new javax.swing.ImageIcon(getClass().getClassLoader().getResource("images/rollDice.jpg"))); gbc.gridx = 2; gbc.gridy = 5; gbc.gridheight = 3; gbc.gridwidth = 3; frame2.add(rollDiceImage, gbc); JLabel quitEducationImage = new javax.swing.JLabel(); quitEducationImage.setIcon( new javax.swing.ImageIcon( getClass().getClassLoader().getResource("images/quitEducation.jpg"))); gbc.gridx = 6; gbc.gridy = 5; gbc.gridheight = 3; gbc.gridwidth = 3; frame2.add(quitEducationImage, gbc); exitApplication.setFont(boldFont); saveCareerProspects.setFont(boldFont); saveCareerProspects.setForeground(Color.ORANGE); exitApplication.setBackground(Color.BLACK); exitApplication.setForeground(Color.RED); Border border = new LineBorder(Color.LIGHT_GRAY, 5); exitApplication.setBorder(border); saveCareerProspects.setBorder(border); start.setBorder(border); howToPlay.setBorder(border); playButton.setBorder(border); exitButton.setBorder(border); howToPlay.setFont(boldFont); playButton.setFont(boldFont); exitButton.setFont(boldFont); border = new LineBorder(Color.ORANGE, 5); playerName.setBorder(border); // Adds the fields to the panel // Adds all the panels to the container welcome.add(loading); container.add(start); container.add(frame); container2.add(frame2); container3.add(frame3); // Action Listeners for the buttons howToPlay.addActionListener(this); playButton.addActionListener(this); exitButton.addActionListener(this); quitEducation.addActionListener(this); rollDice.addActionListener(this); saveCareerProspects.addActionListener(this); exitApplication.addActionListener(this); // Starts up the UI startGui(); print(); }