小编Mar*_* B.的帖子

禁用Android资源/图片/ PNG优化

如何防止Android"构建过程"优化.png图像?

我有一个包含以下res目录的Android项目:

- /res/
- /res/drawable
- /res/drawable-hdpi
- /res/drawable-hdpi-v5
- /res/drawable-ldpi
- /res/drawable-ldpi-v5
- /res/drawable-mdpi
- /res/drawable-mdpi-v5
Run Code Online (Sandbox Code Playgroud)

这些目录包含许多.png文件.我使用PNGOUTWin优化PNG尺寸,整体尺寸减少了20%以上.当我构建.apk文件时,图像由构建过程"优化",整体大小现在比初始大小高10%,或者比我的/ PNGOUTWin优化大小高30%.

我的目标是减小.apk大小,即使它会影响最终性能,内存要求等.如何防止"构建过程"优化.png图像?

我的目标是Android 2.2及更高版本.

PS:我目前正在从Eclipse构建我的Android项目,但我稍后会切换到自动构建(Ant?).

关于JPG图像的注意事项: JPG不起作用,因为它们没有透明度.

android android-build android-image android-resources

19
推荐指数
3
解决办法
2万
查看次数

C++如何检测Windows Server 2019?

Microsoft于2018年10月2日发布了Windows Server 2019.从Windows 2000到Windows版本,您可以使用结构OSVERSIONINFOEX并根据变量调用WinAPI函数GetVersionEx,并确定Windows版本,例如Windows 8.1, Windows 10,Windows Server 2012 R2.每个人使用的代码都是这样的:dwMajorVersiondwMinorVersionwProductType

OSVERSIONINFOEX osvi;
SecureZeroMemory(&osvi, sizeof(OSVERSIONINFOEX));
osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);
if (GetVersionEx(&osvi)) {
    if (osvi.dwMajorVersion == 10 &&
        osvi.dwMinorVersion == 0 &&
        osvi.wProductType != VER_NT_WORKSTATION) {
            Console->Log("We are running on Windows Server 2016");
        }
}
Run Code Online (Sandbox Code Playgroud)

维基百科来看,Windows Server 2019与Server 2016具有相同的NT 10.0版本号.因此上述代码不再起作用.

此外,Microsoft Docs包含以下注释:Windows 8.1之后的版本可能会更改或不可用GetVersionEx.而是使用版本助手功能.

不幸的是,版本助手功能没有检测服务器2019的功能.另外,奇怪的是,关于目标的文档页面在Windows 10停止,并且没有谈论服务器版本,而这些目标清单是检测操作系统必需的在Windows 8.1或Server 2012之上.

更新1. 由于@IInspectable和@RbMm评论了RtlGetVersion函数的用法.所以我运行了以下代码(取自这个答案):

typedef LONG NTSTATUS, *PNTSTATUS;
#define STATUS_SUCCESS …
Run Code Online (Sandbox Code Playgroud)

c++ windows winapi

9
推荐指数
1
解决办法
1698
查看次数

带有填充和CSS样式活动的HTML链接不起作用

带有填充和CSS样式的HTML链接无法在Google Chrome,Apple Safari,Opera,Mozilla Firefox中使用.但是,它适用于Internet Explorer 8.

这是一个示例代码.尝试单击堆栈 - 链接不起作用,单击溢出 - 链接工作.通过工作我的意思是 - 导航到StackOverflow网站.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
 "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <title>css active padding href problem</title>
        <style type="text/css">
            a{
                display: inline-block;
                background:#CCC;
                border:1px solid #666;
                padding:0 35px 0 0;
            }
            a:active{
                padding:0 0 0 35px;
            }
        </style>
    </head>
    <body>
        <div>
            <p>Click on <i>Stack</i> - href does not work.
               Click on <i>Overflow</i> - href works.
               All browsers are affected.
               Except IE.</p>
            <a href="http://stackoverflow.com/">StackOverflow</a>
        </div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

为什么它在大多数浏览器中不起作用?

编辑2:如果你改变:active to:hover,那么所有浏览器中的一切都按预期工作 …

html css anchor padding

7
推荐指数
1
解决办法
2万
查看次数

如何在Visual Studio 2019 for C ++编辑器中关闭双引号自动完成功能?

更新到Visual Studio 2019的16.1版后,C ++的代码编辑器将完成双引号字符。当我输入一个双引号“时,它会自动将其补成”“。

如何关闭此功能?我试图查看设置,但在C ++编辑器设置或“所有语言”设置中找不到。

更新:它实际上仅在我键入以L开头的宽字符串文字时才完成。例如,当我键入L“时,它将自动完成为L”“

更新2:它适用于某些.cpp文件,但不适用于其他文件。我目前看不到任何模式。好像是个错误。

visual-studio visual-studio-2019

6
推荐指数
2
解决办法
386
查看次数

为什么Java源代码中的超链接不会产生编译错误?

在源代码中,我忘了在链接之前添加注释.例如,以下代码:

public class HelloWorld
{
  public static void main(String[] args)
  {
    http://www.example.com/random-link-here
    System.out.println("Hello World!");
  }
}
Run Code Online (Sandbox Code Playgroud)

为什么编译?不知何故无法弄清楚它做了什么...它像Goto +评论的标签,但Java没有goto ...

java

2
推荐指数
2
解决办法
78
查看次数