Tag: 调整

libgdx如何将BitmapFont缩放到更改屏幕大小?

我想要的是在更改屏幕尺寸时相应地改变尺寸的位图字体。 我的意思是在我的电脑上,字体看起来相当大,但在我的手机上,它是一个难以阅读的小字体。 我可以改变大小,但我希望它在所有屏幕上都看起来相似,而不是在一个屏幕上大而在另一个屏幕上小一些。 这是我的代码,看看我有什么用处: public void render() { //score system scoreFont.setColor(1.0f, 1.0f, 1.0f, 1.0f); scoreBatch.begin(); scoreFont.draw(scoreBatch, Long.toString(getScore()), 10, Gdx.graphics.getHeight() – 10); scoreFont.setScale(3, 3); scoreBatch.end(); } public void resize(int width, int height) { camera.viewportWidth = 450; camera.viewportHeight = 250; camera.update(); stage.setViewport(450, 250, true); stage.getCamera().translate(-stage.getGutterWidth(), -stage.getGutterHeight(), 0); }

是否可以增加java进程(运行时)的大小?

我有一个非常重要的过程在运行。 我无法阻止它,需要扩大java进程的大小! 有没有办法在线增加我的java进程的大小(在运行时)?

为什么我的jFrame只在我调整窗口大小后才更新?

我知道当你添加/删除一个组件时,你需要revalidate()然后repaint() 。 但是,我正在改变多边形的状态。 最初,显示图像,但是当我按下左右键时,图像不会移动。 如果我移动窗口,gui会更新。 我按键时为什么不更新? public class Terminos { private LeftTermin ter; private String[] commands = { “UP”, “DOWN”, “RIGHT”, “LEFT” }; public Terminos() { initComp(); } public void initComp() { JFrame jFrame = new JFrame(); jFrame.setSize(500, 500); Component pane = new myPanel(); jFrame.add(pane); ter = new LeftTermin(200, 200); jFrame.addKeyListener(new KeyListener() { public void […]

如何以平滑的方式根据容器大小自动调整多个JLabel的字体大小?

我需要根据用于调整容器大小的缩放因子来调整多个JLabel的字体大小。 为此,我将每个JLabel的字体设置为null,以便它们采用容器的字体。 它有效,但它也会产生奇怪的结果。 具体而言,文本似乎“滞后”在容器后面,有时甚至会被截断。 我想避免这种行为。 知道怎么样? 模拟行为的示例代码: import java.awt.BorderLayout; import java.awt.Color; import java.awt.Container; import java.awt.Dimension; import java.awt.Font; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.Insets; import java.awt.geom.AffineTransform; import javax.swing.BorderFactory; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JSlider; import javax.swing.SwingUtilities; import javax.swing.WindowConstants; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; public class TextResize implements Runnable { public static void main(String[] args) { […]

AWT自定义渲染 – 捕获平滑resize并消除resize闪烁

我已经看了几个月了,到目前为止这是我提出的最好的。 由于我们的应用程序以这种方式运行并且不会被重写,因此结构(在EDT之外呈现)不值得辩论。 该应用程序具有布局模型和脚本模型,它们是集成和驱动渲染,因此渲染必须在AWT绘制模型之外执行。 我想要达到的是执行自定义渲染的最佳和可靠的方法。 以下SSCCE对我们来说效果很好。 但是,在帧大小调整期间,它有两个缺点: 偶尔有闪烁,特别是在快速resize时 从paint()调用调用resize(通过checkSize)调用的“smooth resize”hack仅适用于扩展。 缩小框架时,通常不会渲染,直到释放鼠标按钮 此外,但在这里不太明显,它偶尔会抛出IllegalStateExceptions – 可以简单地捕获/忽略这些吗? 同样有用的是输入这是否是在EDT之外发生的自定义渲染路径的最佳方法。 我尝试过最多,并做了相当广泛的研究。 这种组合(后备缓冲图像,双缓冲策略)似乎效果最好。 import java.awt.Color; import java.awt.Dimension; import java.awt.Frame; import java.awt.Graphics; import java.awt.Insets; import java.awt.Toolkit; import java.awt.event.ComponentEvent; import java.awt.event.ComponentListener; import java.awt.event.MouseEvent; import java.awt.event.MouseMotionListener; import java.awt.image.BufferStrategy; public class SmoothResize extends Frame implements ComponentListener, MouseMotionListener { public SmoothResize() { addComponentListener(this); addMouseMotionListener(this); } private boolean […]