gpt4 book ai didi

java - 将具有样式范围的 SWT StyledText 内容转换为图像

转载 作者:太空宇宙 更新时间:2023-11-04 07:46:57 25 4
gpt4 key购买 nike

我想将 Styledtext (使用 StyleRanges )的内容打印/转换为图像。不知道怎么处理..

任何人请指导我做到这一点..

最佳答案

给你:

public static void main(String[] args)
{
final Display display = new Display();
final Shell shell = new Shell(display);
shell.setText("Widget");
shell.setLayout(new GridLayout(1, false));

final StyledText text = new StyledText(shell, SWT.BORDER);
text.setText("Text to capture");
text.setStyleRange(new StyleRange(0, text.getText().length(), display.getSystemColor(SWT.COLOR_RED), display.getSystemColor(SWT.COLOR_BLACK)));
text.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false));

Button button = new Button(shell, SWT.PUSH);
button.setText("Capture");
button.addListener(SWT.Selection, new Listener()
{
public void handleEvent(Event event)
{
Point tableSize = text.getSize();
GC gc = new GC(text);
final Image image = new Image(display, tableSize.x, tableSize.y);
gc.copyArea(image, 0, 0);
gc.dispose();

ImageLoader loader = new ImageLoader();
loader.data = new ImageData[] {image.getImageData()};
loader.save("swt.png", SWT.IMAGE_PNG);

image.dispose();
}
});

shell.pack();
shell.open();
while (!shell.isDisposed())
{
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}

这就是 Shell 的样子:

enter image description here

这就是捕获的图像的样子:

enter image description here

关于java - 将具有样式范围的 SWT StyledText 内容转换为图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15158138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com