Как рассчитать ширину String
в пикселях в Java? Например, у меня есть строка «Hello World!». Какова его длина в пикселях, также учитывая его семейство и размер шрифта?Как вычислить ширину строки в пикселях?
ответ
Есть несколько способов, чтобы добиться того, что вы хотите, основываясь на том, что именно вы хотите достичь, к примеру ...
BufferedImage img = new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB);
Graphics2D g2d = img.createGraphics();
FontMetrics fm = g2d.getFontMetrics();
System.out.println(fm.stringWidth("This is a simple test"));
g2d.dispose();
Но это имеет только relevence для BufferedImage
и это Graphics
контекст, он не будет переводить обратно сказать, что-то вроде экрана или принтер.
Однако, если у вас есть контекст Graphics
, вы можете добиться того же результата.
Этот пример, очевидно, использует шрифт по умолчанию, установленный для Graphics
контекста, который можно изменить, если вам нужно ...
У меня просто есть строка. Я знаю его длину, семейство шрифтов, размер шрифта. Я хочу рассчитать его размер в пикселях. – user2550754
Хорошо, тогда вы можете использовать что-то вроде выше. Ширина и высота зависят от контекста «Graphics», который вы просматриваете. Хотя у вас есть семейство шрифтов, размер шрифта и текст, вам не хватает ключевого элемента – MadProgrammer
+1, но TextLayout/SwingUtilities.computeStringWidth – mKorbel
Вкратце: вопрос зависит от используемой структуры. Например, если вы используете AWT, и имеют Graphics
объект graphics
и Font
объект font
вы можете сделать следующее:
FontMetrics metrics = graphics.getFontMetrics(font);
int width = metrics.stringWidth("Hello world!");
Заканчивать this для получения дополнительной информации.
Вы можете попробовать что-то вроде этого
Graphics2D g2d = ...
Font font = ...
Rectangle2D r = font.getStringBounds("hello world!", g2d.getFontRenderContext());
System.out.println("(" + r.getWidth() + ", " + r.getHeight() + ")");
doc См этот, может помочь вам.
Кажется, немного переоценено, учитывая, что вы можете использовать 'Graphics # getFontMetrics', но я дам вам голосование за то, что вы поменялись;) – MadProgrammer
Есть несколько способов сделать это, вы можете попробовать label.getElement().getClientWidth();
если текст находится в звукозаписывающей компании, если вы используете AWT вы можете использовать Graphics.getFontMetrics
затем FontMetrics.stringWidth
Вы можете использовать FontMetrics. Класс FontMetrics определяет объект метрики шрифта, который инкапсулирует информацию об рендерингх конкретного шрифта на конкретном экране.
Вы можете сделать что-то вроде ниже
Font font = new Font("Verdana", Font.PLAIN, 10);
FontMetrics metrics = new FontMetrics(font) {
};
Rectangle2D bounds = metrics.getStringBounds("Hello World!", null);
int widthInPixels = (int) bounds.getWidth();
У меня очень хорошее чувство, что это не сработает. Размер пикселя зависит от контекста «Graphics», который вы передаете «null» для ... – MadProgrammer
Не знаете, как перекрещивать проверку результата, но когда я его запустил, я получил 67 в качестве вывода для строки Hello World !. –
- 1. вычислить ширину в пикселях в Opera
- 2. Gtk как рассчитать ширину строки в пикселях
- 3. Как получить ширину строки в пикселях?
- 4. Вычислить длину строки в пикселях в openCV
- 5. Вычислить ширину отображения строки в Java
- 6. Winapi получить ширину строки в пикселях
- 7. Как найти ширину строки (в пикселях) в WIN32
- 8. Длина строки в пикселях
- 9. Как получить ширину строки в пикселях (/ логических единицах)?
- 10. Gnuplot: Как указать ширину графика в пикселях?
- 11. Как установить ширину (в пикселях) входного ползунка?
- 12. Вычислить ширину отображения строки в C#?
- 13. Как установить максимальную ширину в процентах и пикселях?
- 14. Cocoa получить ширину строки в пикселях от шрифта
- 15. Вычислить ширину отображения строки с помощью wxWidgets
- 16. Длина строки в пикселях
- 17. Получить ширину AlertDialog в пикселях или dp
- 18. Bootstrap получить ширину столбца div в пикселях
- 19. CSS градиент: определить ширину в пикселях
- 20. Как рассчитать ширину переменной строки в пикселях с помощью JavaScript/JQuery
- 21. как вычислить ширину объекта Opengl в android
- 22. Как вычислить оптимальную ширину заголовка?
- 23. Как получить ширину строки в Libgdx?
- 24. В wpf как вычислить длину пикселя строки?
- 25. Вычислить ширину динамически (JQuery)
- 26. Как получить ширину столбца сетки в пикселях в WPF?
- 27. Как вычислить ширину и высоту строки шрифта написанного битового шрифта
- 28. Получить длину строки в пикселях
- 29. Вычислить ширину изображения в JQuery
- 30. Как установить ширину и высоту холста Android в пикселях?
Ну, у вас есть специальный шрифт и размер шрифта в виду? – Matthias
Это может быть произвольно любой. – user2550754
Отредактировано ваше форматирование, чтобы удалить разметку кода для длины в частности. –