以(不带括号)的特定格式输出设备的屏幕分辨率[width]x[height]
。例如,输出可能是1440x900
。
'0x0'
以(不带括号)的特定格式输出设备的屏幕分辨率[width]x[height]
。例如,输出可能是1440x900
。
'0x0'
Answers:
(_=screen)=>_.width+"x"+_.height
输出为函数return
。f=
在开头添加并调用like f()
。使用参数初始化将参数初始化_
为screen
对象。其余的不言而喻。
f=(_=screen)=>_.width+"x"+_.height
console.log(f())
注意:向此函数传递参数将导致其失败。
with(screen)alert(width+"x"+height)
没想到我会一天使用with
!我认为这不能再打了。
s=screen,s.width+"x"+s.height
(29个字符)也可以使用。
alert
:with(screen)(width+'x'+height)
仅返回适当的字符串。
_=screen,_.width+"x"+_.height
,29个字节
*叹气* TI-BASIC为每个小写字母占用一个额外的字节。
+2感谢@Timtech
-3感谢@Timtech
:If ΔX>.1
:Then
:Disp "96x64
:Else
:Disp "320x240
之所以如此,是因为TI-BASIC只能在具有两种不同屏幕分辨率的计算器上运行:96 x 64和320 x240。我只是通过将Zoom设置为根据屏幕分辨率而有所不同的东西,来查看我所拥有的屏幕输出正确的分辨率。
我现在将其标记为不竞争,因为它是硬编码的。
ZDecimal
然后使用不同的Xmax
比较来保存至少一个字节。另外,我认为您需要使用x
两个字节(x2)的小写字母,而不是一字节的大写字母。
ZDecimal
),因为ZStandard
两个计算器的默认zoom()相同。不过,我将解决大小写问题。
ZStandard
,ΔX
计算器之间会有所不同吗?另外,ZDecimal
由于只有1个字节,因此为31个字节。
_=>(s=screen).width+'x'+s.height
console.log((_=>(s=screen).width+'x'+s.height)())
_=>(s=screen).width+'x'+s.height
保存一个字节
/*/*/sy*r SPDisplaysDataType|awk '/so/{print$2$3$4}'
运行system_profiler
,获取SPDisplaysDataType
信息,搜索的第一个so
中Resolution
,并打印屏幕分辨率。对于多屏幕,这会打印所有分辨率。
先前的不合规变体:
/*/*/sy*r SPDisplaysDataType|grep so|tr -d 'R :a-w'
2880x1800\n1920x1080@60Hz
(两行)。我不知道这是否不符合条件...或?
@60Hz
显然不符合规范。
|sed 1q
,将字节数增加到58个字节。
awk
一个额外的字节并修复了不符合项。:)
感谢@Johan du Toit节省了一个字节!
#import<windows.h>
#define G GetSystemMetrics
f(){printf("%dx%d",G(0),G(1));}
#define G GetSystemMetrics f(){printf("%dx%d",G(0),G(1));}
-7感谢Martin Ender
-5(实际上是12!)从 Leaky Nun的,Regex巫术超出了我。
这很长,但不长于可怕的System.Windows.Forms.SystemInformation.PrimaryMonitorSize
解决方案
(gwmi win32_videocontroller|% v*n)-replace" |x \d+\D+$"
首先,我们Get-WmiObject
(gwmi
)检索Win32_VideoController
包含名为的成员的对象,该成员VideoModeDescription
是格式的字符串1920 x 1080 x 4294967296 colors
,然后运行正则表达式替换以获取正确的格式。
PS H:\> (gwmi win32_videocontroller|% v*n)-replace" |x \d+\D+$"
1920x1080
(gwmi win32_videocontroller|% v*n)-replace" |x[^x]+$"
通过调整正则表达式可以节省几个字节。
SystemInformation[][[1,5,2,1,2,1,2,2,;;,2]]~Infix~x
这可能对您不起作用,具体取决于您连接的设备(我不知道)。这应该总是可行的(假设您至少连接了一个屏幕):
Infix[Last/@("FullScreenArea"/.SystemInformation["Devices","ScreenInformation"][[1]]),x]
SystemInformation[]
返回形式的表达式
SystemInformationData[{
"Kernel" -> {__},
"FrontEnd" -> {__},
"Links" -> {__},
"Parallel" -> {__},
"Devices" -> {__},
"Network" -> {__},
}]
我们感兴趣的是"Devices"
,可以直接访问SystemInformation["Devices"]
或SystemInformation[][[1,5,2]]
。结果将是表单的列表
{
"ScreenInformation" -> {__},
"GraphicsDevices" -> {__},
"ControllerDevices" -> {__}
}
我们想要"ScreenInformation"
,它可以像SystemInformation["Devices","ScreenInformation"]
或更简洁地访问SystemInformation[][[1,5,2,1,2]]
。结果将为以下形式
{
{
"ScreenArea" -> {__},
"FullScreenArea" -> {{0,w_},{0,h_}},
"BitDepth" -> _,
"Resolution" -> _
},
___
}
列表的长度将是您已连接的屏幕数。第一个屏幕是SystemInformation[][[1,5,2,1,2,1]]
,宽度和高度可以提取为,SystemInformation[][[1,5,2,1,2,1,2,2,;;,2]]
然后我们只需Infix
x
为输出格式插入即可。
String f(){java.awt.Dimension s=java.awt.Toolkit.getDefaultToolkit().getScreenSize();return s.width+"x"+s.height;}
由于此方法使用awt库,因此在Java的无头安装中(如在TIO上)将无法使用。在幕后,调用getScreenSize
使用Java Native Interface调用(通常进入C库)屏幕宽度和屏幕高度。
-9个字节,感谢OlivierGrégoire提醒我,我可以返回字符串而不是打印它。
...x...
,因为void f(){System.out.print((java.awt.Toolkit.getDefaultToolkit().getScreenSize()+"").replaceAll("[^\\d,]",""));}
其输出1920,1200
是较短..
x
,而不是,
通过使用一些正则表达式替换,但它的五个字节超过您目前的答案是:void f(){System.out.print((java.awt.Toolkit.getDefaultToolkit().getScreenSize()+"").replaceAll("[^\\d,]","").replace(",","x"));}
或void f(){System.out.print((java.awt.Toolkit.getDefaultToolkit().getScreenSize()+"").replaceAll(".*?(\\d+).*?(\\d+).*","$1x$2"));}
很好啊,究竟是不是在Java中重..,P
_=>{var s=System.Windows.Forms.Screen.PrimaryScreen.Bounds;return s.Width+"x"+s.Height;};
通过@TheLethalCoder来提醒-6个字节,这使我想起OP没有提及打印,因此返回字符串也可以。并通过将其更改为lambda来增加-6个字节。
Func<string>
:可以节省11个字节()=>{var s=System.Windows.Forms.Screen.PrimaryScreen.Bounds;return s.Width+"x"+s.Height;};
。但是,您有一个返回值,void
但您正在返回一个值,string
因此您需要为此添加2个字节。
_=>{var s=System.Windows.Forms.Screen.PrimaryScreen.Bounds;return s.Width+"x"+s.Height;};
var s=System.Windows.Forms.Screen.AllScreens[0].Bounds;
方法也一样,但您可以牢记这一想法。
read -aa<<<`xrandr`
echo ${a[7]}x${a[9]::-1}
xrandr
属于X服务器,在Ubuntu上由x11-xserver-utils软件包提供。
样品运行:
bash-4.3$ read -aa<<<`xrandr`;echo ${a[7]}x${a[9]::-1}
1920x1080
xrandr|grep -oP '\d+x\d+'|line
谢谢:
样品运行:
bash-4.3$ xrandr|grep -oP '\d+x\d+'|line
1920x1080
xrandr|grep *
吗?
from ctypes import*
u=windll.user32.GetSystemMetrics;
print u(0),'x',u(1)
print u(0),'x',u(1)
较小并且他的示例(链接)允许这样做
To clarify, If it's equivalent to the output from What is my screen resolution, It's valid.
在该网站中,每个部分之间都有空间
' '⎕R'x'⍕⌽⊃⎕WG'DevCaps'
⎕WG'DevCaps'
W¯¯ indow ģ等开发冰第 abilitie 小号
⊃
选择第一个属性(高度,宽度)
⌽
相反
⍕
格式化为文本
' '⎕R'x'
[R E放置空间用“×”
(由于@AppleShell的帮助,-4个字符)
是。它编译。
m[3];main(){SDL_Init(32);SDL_GetDesktopDisplayMode(0,m);printf("%dx%d",m[1],m[2]);}
运行: gcc snippet.c -lSDL2 && ./a.out
m
全局设置和省略来缩短此时间int
:m[3];main(){...
m+1
应该短于m[1]
正确的时间?还是在C中但仅在C ++中不可能?肯定printf有一些取消引用令牌
感谢@ Jonathan-allan,@ felipe-nardi-batista
from Tkinter import*
print'%sx%s'%Tk().maxsize()
对于单一显示设置,这与站点的输出匹配。这样可以为多个显示器提供整体分辨率。
print'x'....
保存一个字节
v=Tk().maxsize()
,print'%sx%s'%v
节省9个字节。
print'%sx%s'%Tk().maxsize()
保存另外4个> _ <
xdpyinfo|grep dim|cut -d' ' -f7
从手册页:
xdpyinfo - is a utility for displaying information about an X server.
@Floris @manatwork感谢您节省一些字节!
-d\
代替来写-d' '
。然后,当涉及到grep
一行和该行cut
的一部分时,通常只需一次awk
调用即可缩短:xdpyinfo|awk '/dim/&&$0=$2'
。
dimensions
但xdpyinfo
我的系统上却没有...
void setup(){fullScreen();print(width+"x"+height);}
输出格式为:width height
。此外,该程序还会创建一个与您正在使用的屏幕大小相同的窗口(因为每个处理程序默认都会创建一个窗口),并且该程序只会输出此窗口/草图的高度和宽度。
WIDTHxHEIGHT
。
((import html-toolkit)
(htmlOnLoad #::((var S(index(getWindow)screen))
(print(+(index S width)"x"(index S height))))))
(添加了换行符以提高可读性)
最后,我的html-toolkit模块得到了一些使用!仅可在“在线试用”链接中使用,而不能从命令行使用。
如果1024 x 768
可能是有效输出,则可以保存一些字节。我们只是(+ .. "x" .. )
用来避免print
的隐式间距。
2048x1080
的是真正的4K屏幕4096x2160
。知道为什么吗?FreeBSD 11上的Firefox 52.0。–
window.screen
获取width
和height
属性。我想如果您打开Firefox控制台并输入,window.screen
就会看到明显的错误2048x1080
。
$ set `xrandr`;echo $6x$8
3360x1050
在CentOS 5盒子上进行了测试,显示器重定向到带有两个显示器的Cygwin机器。这里的完整xrandr
输出是
$ xrandr
SZ: Pixels Physical Refresh
*0 3360 x 1050 ( 889mm x 278mm ) *0
Current rotation - normal
Current reflection - none
Rotations possible - normal
Reflections possible - none